一.ps命令
1.简介
命令:ps
对应单词:process status
作用:查看当前正在运行的进程
常用参数组合:ps -ef
-e参数:对应单词entire,表示全部。具体指显示系统中全部的进程信息。
-f参数:对应单词full-formate,表示完整格式。
效果:
2、进程信息中各列数据说明
- 简单来说,父进程和子进程的关系是:父进程启动了子进程。我们可以使用pstree命令查看整个进程树。
3.和其他命令配合
1.分屏查看进程信息
全部进程的信息太多了,一屏无法全部显示,所以我们希望可以分屏显示并由我们来控制翻页。为了达到这个目标,我们可以使用管道符号将ps -ef命令的输出数据传送给more命令。
2.精确查询一个进程信息
- 我们通过finalshell远程连接Linux系统,靠的是sshd这个服务。这个服务如果正在运行中,那么一定会有这个服务对应的进程。所以下面我们来查询一下sshd这个命令的进程。
我们看到这里返回了4条结果,其中前三个都是和sshd服务相关的结果,但是最后一条不是。
仔细观察一下就能发现,这其实是grep命令本身。因为grep命令运行过程中本身也是一个进程,“grep sshd”正好也匹配sshd,所以就被选中了。
二.kill命令
1、简介
命令:kill
作用:杀死进程
说明:kill命令本质上是给进程发送信号。
语法: kill [-9] 进程ID
选项:-9,表示强制关闭进程。不使用此选项会向进程发送信号要求其关闭,但是否关闭看进程自身的处理机制。
三.top命令
1.简介
命令:top
作用:实时查看系统运行情况和健康状态。
可以通过top命令查看CPU、内存使用情况,类似Windows的任务管理器 默认每5秒刷新一次,
语法:直接输入top即可,按q或ctrl + c退出。
2.查询结果详解
- 第一行信息为任务队列信息
- 第二行为进程信息
- 第三行为CPU信息
- 第四行为物理内存信息
- 第五行为交换分区(swap)信息
交换分区是一个非常值得关注的地方,如果swap区的used数值持续发生变化那么说明在内核和交换分区之间正在持续发生数据交换,这表示内存不够用了——必须不断把内存中的数据保存到硬盘上。
- 下面几行为进程的详细信息
PID:进程id
USER:进程所属用户
PR:进程优先级,越小越高
NI:负值表示高优先级,正表示低优先级
VIRT:进程使用虚拟内存,单位KB
RES:进程使用物理内存,单位KB
SHR:进程使用共享内存,单位KB
S:进程状态(S休眠,R运行,Z僵死状态,N负数优先级,I空闲状态)
%CPU:进程占用CPU率
%MEM:进程占用内存率
TIME+:进程使用CPU时间总计,单位10毫秒
COMMAND:进程的命令或名称或程序文件路径
四.netstat命令
1、简介
命令:netstat
对应单词:net status
作用:查看网络状态
常用参数:netstat -anp
netstat命令显示的网络状态信息包含两部分内容:
- 本机和外部的连接状态信息
- 本机系统内部进程间通信信息
2.网络连接信息
- 字段含义说明:
9100 9299等代表的是该进程所使用的端口号。
3.使用技巧
①分屏查看
netstat -anp | less
②根据进程名称查看网络状态
netstat -anp | grep sshd
③根据端口号查看网络状态
netstat -anp | grep :22
这里需要注意一下,端口号本身就是一串数字,进程id也是一串数字。那么根据端口号匹配时,很多无关的进程id也会被匹配到,造成大量不必要的干扰。此时给端口号数字前加上冒号就好多了。