在使用linux系统的时候,我们要对进程进行检测和控制,首先必须要了解当前进程的情况,也就是需要查看当前进程运行状态。接下来吾爱编程为大家分享一下linux常用命令查看进程的方法,有需要的小伙伴可以参考一下:
1、PS命令
(1)、介绍:
ps命令是最基本同时也是非常强大的进程查看命令,使用该命令可以确定有哪些进程正在运行和运行的状态、进程是否结束、进程有没有僵死、哪些进程占用了过多的资源等等,总之大部分信息都是可以通过执行该命令得到的。
(2)、PS命令语法:
ps [options]
(3)、相关参数:
参数 | 解释 |
---|---|
-e | 显示所有进程,环境变量 |
-f | 全格式 |
-h | 不显示标题 |
-l | 长格式 |
-w | 宽输出 |
-a | 显示终端上地所有进程,包括其他用户地进程 |
-r | 只显示正在运行地进程 |
-x | 显示没有控制终端地进程 |
(4)、相关实例:
ps -ef | grep php
表示查看所有进程里PHP进程信息
ps -aux | grep php
-aux显示所有状态
2、top命令:
(1)、介绍:
top命令是Linux下常用的性能分析工具,能够实时显示系统中各个进程的资源占用状况,常用于服务端性能分析。
(2)、语法:
top [参数]
(3)、相关参数:
-d | 改变显示的更新速度,或是在交谈式指令列( interactive command)按 s |
-q | 没有任何延迟的显示速度,如果使用者是有 superuser 的权限,则 top 将会以最高的优先序执行 |
-c | 切换显示模式 |
-s | 安全模式,将交谈式指令取消, 避免潜在的危机 |
-i | 不显示任何闲置 (idle) 或无用 (zombie) 的行程 |
-n | 更新的次数,完成后将会退出 top |
-b | 批次档模式,搭配 “n” 参数一起使用,可以用来将 top 的结果输出到档案内 |
(4)、命令截图:
3、pstree命令
(1)、介绍:
Linux系统中pstree命令的英文全称是“process tree”,即将所有行程以树状图显示,树状图将会以 pid (如果有指定) 或是以 init 这个基本行程为根 (root),如果有指定使用者 id,则树状图会只显示该使用者所拥有的行程。
(2)、语法:
pstree [参数]
(3)、相关参数:
-a | 显示每个程序的完整指令,包含路径,参数或是常驻服务的标示 |
-c | 不使用精简标示法 |
-G | 使用VT100终端机的列绘图字符 |
-h | 列出树状图时,特别标明现在执行的程序 |
(4)、常用命令:
pstree -a
显示所有进程的所有详细信息,遇到相同的进程名可以压缩显示
4、pgrep命令
(1)、介绍:
pgrep命令就是检索正在运行的进程,显示匹配准则是进程的PID,可跟正则表达式来匹配进程或命令行。
(2)、语法:
pgrep [参数] [模式]
(3)、相关参数:
-d | 设置一个字符串,用于分隔输出的每个进程ID |
-f | 模式参数仅用于匹配进程名 |
-I | 列出进程名及进程ID |
-P | 仅选择匹配指定父进程ID的进程 |
-u | 选择仅匹配指定有效用户ID进程 |
-U | 选择仅匹配指定真实用户ID的进程 |
(4)、常用命令:
pgrep -u root bash
查询用户root启动的bash进程的PID