掌握以下几个Linux命令,帮你提高工作效率
扫描二维码
随时随地手机看文章
许多程序员熟悉Windows开发,我们的服务器通常是Linux系统。 如果有一天我必须配置Linux服务器或对其进行故障排除,我会感到困惑,并且不知道从哪里开始。 原因是我不知道Linux中使用的命令。 今天,我将为您提供一些常见的Linux命令。 一旦掌握了它们的用法,就可以大大提高工作效率。
01top命令
第一个命令就是top,这个命令是Linux下常用的性能分析工具,能够实时显示系统中各个进程的资源占用情况,有点类似Windows下的任务管理器。
最上面每一行都表示一种性能数据:
top:这一行是汇总信息,09:26:48是系统时间;up 169 days表示运行时间;1 user 表示当前登录用户数;load average 是负载情况,后面的三个数字分别表示1分钟、5分钟、15分钟的负载情况load average 的数据是每隔5秒钟检查一次活跃的进程数,然后计算出结果。Tasks任务:total表示总进程数;running表示运行中的进程;sleeping表示休眠的进程;stopped 表示停止的进程;zombie 表示僵尸进程CPU状态:us是用户空间占用CPU的百分比;sy是内核空间占用CPU的百分比;ni是改变过优先级的进程占用CPU的百分比;id是 空闲CPU百分比;wa是IO等待占用CPU的百分比;hi是硬中断占用CPU的百分比;si是软中断占用CPU的百分比。Mem内存:total是内存总量;used是使用掉的内存;free是空闲的内存;buffers是缓存的内存量Swap交换分区:total、used、free跟内存一样;cached是缓冲的交换区总量下面的列表是各个进程的状态监控,具体每一项含义如下:
PID — 进程idUSER — 进程所有者PR — 进程优先级NI — nice值。负值表示高优先级,正值表示低优先级VIRT — 进程使用的虚拟内存总量,单位kb。VIRT=SWAP+RESRES — 进程使用的、未被换出的物理内存大小,单位kb。RES=CODE+DATASHR — 共享内存大小,单位kbS —进程状态。D=不可中断的睡眠状态 R=运行 S=睡眠 T=跟踪/停止 Z=僵尸进程%CPU — 上次更新到现在的CPU时间占用百分比%MEM — 进程使用的物理内存百分比TIME+ — 进程使用的CPU时间总计,单位1/100秒COMMAND — 进程名称(命令名/命令行)
02ps命令
第二个命令是ps,常用的命令是ps aux或ps -ef,主要作用是查看进程,经常和grep配合使用。这个命令的主要使用场景是查看进程状态或者查找进程号。使用例子如下:
ps aux | grep 'nginx' 或者 ps -ef | grep 'nginx'
03grep命令
这个命令主要用于是在指定文件或文件夹中查找字符串,最常用的场景是跟ps、cat、tail等命令一起使用。例子如下:
tail -f app.log | grep 'register'
04netstat命令
这是一个与网络相关的命令,我用这个命令最主要的是查找端口,例如:
netstat -lntup | grep 80
除此之外,netstat还有很多其他功能,感兴趣的可以自己搜索。
05find命令
find命令用来在指定目录下查找文件,比如在服务器上\home\www目录查找app.c这个文件,就可以这样来查:find /home -name "*.c"
06kill命令
kill命令是用于杀进程的命令,比如要杀掉进程号为2198的进程,则命令是:kill 2198。也可以使用kill -9 2198来彻底啥事进程。
07tail命令
我们经常使用tail命令来监控实时日志,有时候也会配合grep一起使用:
tail -f app.log | grep login
这个命令是实时地查看当前目录下app.log日志中带有login标识符的输入流。
08cat命令
cat命令经常用于查看文件,有时候会配合grep一起使用,用法如下:
cat app.log | grep 'login' | more
这个命令先打开当前目录下的app.log日志文件,然后通过grep查询带有login的日志,最后用more来分页显示。
如果想实现倒序显示,可以使用tac命令,跟cat相同作用,用法如下:
tac app.log | grep 'login' | more