ps命令
功能说明
ps命令用于系统进程在瞬间的运行动态。用法如下:
ps [选项] [-s (间隔秒数)] |
常用参数
选项 | 含义 |
a | 显示所有用户的进程,包含每个程序的完整路径 |
-x | 显示所有系统程序,包括哪此没有终端的程序 |
-u | 显示使用都的名称和起始时间 |
-f | 详细显示程序执行的路径群 |
-c | 只显示进程的名称,不显示进程的完整路径 |
-e | 将除内核进程以外所有进程的信息写到标准输出(等同于-A) |
常用组合:
ps aux 最常用 #列出目前所有的正在内存当中的程序 ps -ef #显示所有进程信息,连同命令行 ps axjf #以树形结构显示进程 |
示例
使用-e参数,显示所有进程(等同于-A)
[root@c7 ~]# ps -e | less #由于行多,使用less来逐页显示 PID TTY TIME CMD 1 ? 00:00:04 systemd 2 ? 00:00:00 kthreadd 3 ? 00:00:03 ksoftirqd/0 5 ? 00:00:00 kworker/0:0H 7 ? 00:00:00 migration/0 8 ? 00:00:00 rcu_bh 9 ? 00:00:00 rcuob/0 10 ? 00:00:00 rcuob/1 ......略 |
使用-ef参数,显示所有进程信息,连同命令行
[root@c7 ~]# ps -ef | less UID PID PPID C STIME TTY TIME CMD root 1 0 0 11月16 ? 00:00:04 /usr/lib/systemd/systemd --switched-root --system --deserialize 24 root 2 0 0 11月16 ? 00:00:00 [kthreadd] root 3 2 0 11月16 ? 00:00:03 [ksoftirqd/0] root 5 2 0 11月16 ? 00:00:00 [kworker/0:0H] root 7 2 0 11月16 ? 00:00:00 [migration/0] .......略 检查Apache进程 [root@c7 ~]# ps -ef | grep httpd |
说明:
-
UID 运行进程的用户
-
PID 是进程的标识号
-
PPID 是父进程的标识号
-
C CPU调度情况
-
STIME 进程启动的时间
-
TTY 是进程所属的终端控制台
-
TIME 列是进程所使用的总的CPU时间
-
CMD 启动进程的命令
使用aux参数,显示目前所有正在内存中的程序
[root@c7 ~]# ps aux | less USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND root 1 0.0 0.3 57564 7472 ? Ss 11月16 0:04 /usr/lib/systemd/systemd --switched-root --system --deserialize 24 root 2 0.0 0.0 0 0 ? S 11月16 0:00 [kthreadd] root 3 0.0 0.0 0 0 ? S 11月16 0:03 [ksoftirqd/0] root 5 0.0 0.0 0 0 ? S< 11月16 0:00 [kworker/0:0H] root 7 0.0 0.0 0 0 ? S 11月16 0:00 [migration/0] root 8 0.0 0.0 0 0 ? S 11月16 0:00 [rcu_bh] root 9 0.0 0.0 0 0 ? S 11月16 0:00 [rcuob/0] .......略 [root@rsync01 ~]# ps aux | egrep '(apache|nagios)' #同时查询apache和nagios程序的进程 nagios 1125 0.0 0.0 39244 1372 ? Ss Nov18 0:37 /usr/local/nagios/bin/nrpe -c /usr/local/nagios/etc/nrpe.cfg -d apache 4543 0.0 0.3 254976 7524 ? S Nov20 0:00 /usr/sbin/httpd apache 4544 0.0 0.3 254824 6552 ? S Nov20 0:00 /usr/sbin/httpd apache 4545 0.0 0.4 255568 7648 ? S Nov20 0:00 /usr/sbin/httpd apache 4546 0.0 0.3 254824 6548 ? S Nov20 0:00 /usr/sbin/httpd apache 4547 0.0 0.4 256088 9088 ? S Nov20 0:00 /usr/sbin/httpd apache 4548 0.0 0.3 254824 6560 ? S Nov20 0:00 /usr/sbin/httpd apache 4550 0.0 0.4 256088 9044 ? S Nov20 0:00 /usr/sbin/httpd apache 4552 0.0 0.4 254976 7808 ? S Nov20 0:00 /usr/sbin/httpd root 7545 0.0 0.0 4152 700 pts/1 R+ 13:53 0:00 egrep (apache|nagios) |
说明:
-
USER:该 process 属于那个使用者账号的
-
PID :该 process 的号码
-
%CPU:该 process 使用掉的 CPU 资源百分比
-
%MEM:该 process 所占用的物理内存百分比
-
VSZ :该 process 使用掉的虚拟内存量 (Kbytes)
-
RSS :该 process 占用的固定的内存量 (Kbytes)
-
TTY :该 process 是在那个终端机上面运作,若与终端机无关,则显示 ?,另外, tty1-tty6 是本机上面的登入者程序,若为 pts/0 等等的,则表示为由网络连接进主机的程序。
-
STAT:该程序目前的状态,主要的状态有
-
R :该程序目前正在运作,或者是可被运作
-
S :该程序目前正在睡眠当中 (可说是 idle 状态),但可被某些讯号 (signal) 唤醒。
-
T :该程序目前正在侦测或者是停止了
-
Z :该程序应该已经终止,但是其父程序却无法正常的终止他,造成 zombie (疆尸) 程序的状态
-
START:该 process 被触发启动的时间
-
TIME :该 process 实际使用 CPU 运作的时间
-
COMMAND:该程序的实际指令
使用pstree,以树状显示进程
[root@rsync01 ~]# pstree init-+-auditd---{auditd} |-cachefilesd |-crond |-httpd---8*[httpd] |-master-+-cleanup | |-local | |-pickup | `-qmgr |-6*[mingetty] |-nrpe |-rsyslogd---3*[{rsyslogd}] |-sshd---bash---pstree |-sshd `-udevd---2*[udevd] |
学习自:
高俊峰《循序渐进Linux》
http://www.cnblogs.com/peida/archive/2012/12/19/2824418.html
本文转自cix123 51CTO博客,原文链接:http://blog.51cto.com/zhaodongwei/1874994,如需转载请自行联系原作者