ps 是Process Status 的缩写, ps命令用于显示当前进程的状态,其语法格式如下:
ps [选项]
常用参数如下:
-e :等价于-A,表示列出全部的进程
-f :表示显示全部的列
输出结果讲解:
[root@nginx ~]# ps -ef | head
UID PID PPID C STIME TTY TIME CMD
root 1 0 0 Oct06 ? 00:00:06 /usr/lib/systemd/systemd --switched-root --system --deserialize 21
root 2 0 0 Oct06 ? 00:00:00 [kthreadd]
UID 执行该进程的用户ID,即UID
PID 进程的ID号
PPID 父进程ID
C CPU的占用率,百分比形式显示
STIME 进程启动时间
TTY 进程由哪个终端设备开启的,如果显示?表示进程不是由终端设备发起的
TIME 进程实际使用CPU的运行时间
CMD 进程的名称或进程对应的路径或命令
注意:通常我们使用ps -ef命令会与grep结合使用进行刷选,如: ps -ef | grep nginx
演示示例:
[root@nginx ~]# ps -ef | grep nginx #ps与grep结合进行刷选
root 4868 1 0 00:24 ? 00:00:00 nginx: master process ./nginx
nginx 5631 5609 0 00:41 ? 00:00:02 php-fpm: pool www
nginx 5637 5609 0 00:41 ? 00:00:02 php-fpm: pool www
nginx 6085 4868 0 00:55 ? 00:00:00 nginx: worker process
nginx 6086 5609 0 00:56 ? 00:00:01 php-fpm: pool www
root 37112 34365 0 18:18 pts/0 00:00:00 grep --color=auto nginx
[root@nginx ~]#
ps还有一种叫BSD格式的写法,如 ps aux,其等价于ps -ef,但比pa -ef显示的更加详细,如下:
[root@nginx ~]# ps aux
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
root 1 0.0 0.0 191036 4132 ? Ss Oct06 0:07 /usr/lib/systemd/systemd --switched-root --system --deserialize 21
root 2 0.0 0.0 0 0 ? S Oct06 0:00 [kthreadd]
USER 执行该进程的用户
PID 进程的ID号
%CPU 占用的CPU百分比
%MEM 占用的内存百分比
VSZ 进程占用的虚拟内存
RSS 进程占用的物理内存
TTY 进程由哪个终端设备开启的,如果显示?表示进程不是由终端设备发起的
STAT 进程的目前状态,R表示允许running,S表示sleep睡眠,T表示停止stop,Z表示zombie僵尸
STIME 进程启动时间
TIME 进程实际使用CPU的运行时间
COMMAND 进程的名称或进程对应的路径或命令
本文介绍了Linux中的ps命令,用于查看进程状态,包括-e和-f选项的用法,以及输出结果的解析,如UID、PID、PPID、C、STIME等字段。同时展示了如何结合grep进行进程筛选。还提到了ps aux作为BSD格式的展示,包含更多详细信息,如%CPU、%MEM等。通过实例展示了ps命令在系统管理和故障排查中的实用价值。
626

被折叠的 条评论
为什么被折叠?



