图1
在Linux的世界,如果你不玩命令,那你见了同行都不好意思和人家打招呼。同时服务器正常状况下放在远端,一般都是开ssh登录服务器,相信远程桌面的人很少见吧。这篇文章说说Linux服务器下常用的命令。
1、查看本地时间
$date
由于地球上存在这么多的时区,查看下当前时间还是没有错的,比如服务器有问题,看下时区,发现是管理员上班时间,可以给人家发邮件或者电话,效率更高。
2、查看当前登录用户
$who
这个命令可以查看计算机什么时候启动的,都谁登录的。
$whoami
如果你忘记你是谁的话可以通过此命令
3、查看计算机内存使用情况
$free
这条命令会告诉你当前计算机内存详细信息,包括机器总共拥有的内存,使用了内存,剩余内存。
4、查看cpu信息
$lscpu
查看当前cpu信息,包括主频,内核数量
当然了,Lniux物理配置文件都放在/proc/ 目录下,也可以通过下面两条命令查看电脑硬件信息。
$cat /proc/cpuinfo
$cat /proc/meminfo
5、查看进程使用计算机资源排行
$top
这条命令将打印出当前内存使用情况,以及按照cpu使用率前十排名,如果你想要通过内存排名,可以摁,shift + f,然后通过上下键选择你要排名的列名,通过空格选择或取消当前列。
6、查看当前目录
$pwd
$ls -l
第一条命令打印当前目录,当你不断切换目录,或者迷失在Linux王国的时候,你可以通过这条命令打印当前目录。
第二条命令,列出当前目录下所有文件详细信息,当然ls 还有很多参数都很好用。去问man就可以了。
7、统计某个用户使用资源总量
$ps aux | awk '/username/ {sum += $4} END {print sum}'
这条命令是几条命令协同工作,首选ps aux 打印出所有进程,然后通过管道传递为awk的参数,awk是何须人也,请移步coolshell,在哪里你将会领略awk无群魅力。awk参数的意思是匹配用户名为username的进程,将匹配到的进程第四列内容加起来,第四列就是内存占用大小,这样就可以统计出来某个用户占用的内存大小了,当然也可一统计某个软件占用内存大小。
8、查找某个文件所在位置
$locate file
这个命令主要是查找洒落在茫茫Linux文件系统的文件,比如我在开发mysql应用,现在我要包含libmysql.a文件,但我忘记了这个静态文件放在哪里,这时候locate将会以最快的速度列出所有叫这名的文件所在绝对路径。
9、编辑文件
$vi
远程登录服务器,vi是不可缺少的编辑器,不仅因为它是所有Linux系统的标配,更多的是它强大命令,比如搜索,定位,删除,复制。真因为它在单个文件编辑上的绝对优势,所以vi是我使用频率最高的工具。详细用法不想在这废话,因为coolshell 已经有详细描写了。
10、进程管理
$./server &
如果ssh登录进去,将进程运行在后台是非常有必要的,因为总不能,我开启十个服务,就需要登录十次ssh,那也太傻了。上面命令就是将当前目录下叫server的可执行文件在后台运行。
$kill
kill是将某个进程删除。其实说删除并不正确,而是说向某个进程发送信号,都有那些信号,可以用
kill -l 列出所有信号名字,当然平常也会看到发送数字,比如9,19。这是因为kill -l 列出来的名字是定义在/usr/include/x86_64-linux-gnu/bits/signum.h 这个文件下的宏。所以如果你的进程在后台,你想用ctrl-z 退出进程,而不是直接ctrl-c杀死进程的话,看看kill -l 列出的信号名字就明白了。
Linux的命令非常之多,最基本的命令还是需要记住的,当然不是让你去死记硬背,而是用一些小技巧,以及对命令的理解加上练习。相信掌握常用的命令还是很容易的。在这里我只是列出了很少的一部分命令,只不过是在部署游戏服务器的时候用的比较多的命令。在这些命令的背后包含很多计算机知识,比如说信号,比如说进程在前后台运行,正则表达式。这么多知识学到猴年马月,我只能说学海无涯,另外一个就是选择自己方向。