• 重要通知:网站内容不做更新,只对现有的进行扩展,新技术资料已转移到其它位置存储。

  • 通知:2021年3月21日将博客服务器迁移,感谢好友老刘提供的服务器!!!
    点击查看具体站点更新信息

  • 提示:站点启用不定时清理注册未登录的帐户,已登录过用户请无视!

  • 通知:2019年5月18日网站迎来一波大更新!!!

    点击查看具体站点更新信息

ps命令查看进程命令

系统集成 盛行 8年前 (2015-03-11) 2226次浏览 已收录 0个评论 扫描二维码
文章目录
[隐藏]

1.释义

查看进程命令

1.1.ps命令显示字段说明

USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
root   2  0.0  0.0   0   0 ?   S    12月14 0:00 [kthreadd]
root   3  0.0  0.0   0   0 ?   S    12月14 0:00 [ksoftirqd/0]
root   5  0.0  0.0   0   0 ?   S<   12月14 0:00 [kworker/0:0H]

USER:运行进程的用户
PID:进程PID或PPID
%CPU:CPU占用率
%MEM:内存占用率
VSZ:虚拟内存占用
RSS:实际内在占用,驻留内存
TTY:进程运行的终端

STAT:进程状态
R:进程运行
S:可中断睡眠
D:不可中断睡眠
Z:僵尸进程
X:进程已退出
T:进程被暂停
Ss s:进程的父进程,进程
S< <:优先级较高的进程
SN N:优先级较低的进程
R+ +:表示是前台的进程组
Sl:以线程的方式运行

START:进程启动时间
TIME:进程占用CPU的总时间
COMMAND:进程文件、进程名、命令

2.系统帮助

Usage:
 ps [options]

 Try 'ps --help <simple|list|output|threads|misc|all>'
  or 'ps --help <s|l|o|t|m|a>'
 for additional help text.

--sort 按字段排序
--sort=%cpu 按cpu使用率从小到大打印(升序)
--sort=-%cpu 按cpu使用率从大到小打印(降序) 

For more details see ps(1).

补充:
a 关于当前环境的所有进程
x 与当前环境无关的所有进程
f 显示进程从属关系
e 显示当前用户环境中的所有进程
l 长列表显示进程的详细进程
u 显示进程的用户信息

ps ax -o %cpu,%mem,user,group,comm,nice  #指定显示进程的某些信息
%cpu  显示进程cpu负载
%mem  显示进程内存负载
user  进程用户
group 进程组
comm  进程名称
nice  进程优先级

ps ax -o %cpu,comm --sort <+|-%cpu><+|-%mem> 按照进程信息排序
+    正序
-    倒序
%cpu cpu负载
%mem 内存负载

3.示例

3.1.查看进程信息

方法1:(更详细)
[root@itbkz ~]#ps aux 
USER   PID %CPU %MEM    VSZ   RSS TTY  STAT START   TIME COMMAND
root     1  0.3  0.2  44336  4680 ?    Ss   23:01   0:02 /usr/lib/systemd/systemd --switched-root --system --deserialize 22
root     2  0.0  0.0      0     0 ?    S    23:01   0:00 [kthreadd]
root     3  0.0  0.0      0     0 ?    S    23:01   0:00 [ksoftirqd/0]
方法2:(更精简)
[root@itbkz ~]#ps -ef
UID    PID  PPID  C STIME TTY      TIME CMD
root     1     0  0 23:01 ?    00:00:02 /usr/lib/systemd/systemd --switched-root --system --deserialize 22
root     2     0  0 23:01 ?    00:00:00 [kthreadd]
root     3     2  0 23:01 ?    00:00:00 [ksoftirqd/0]
CentOS6.X中建议使用ps -aux,在CentOS7.X中建议使用ps aux

3.2.父子进程模式查看

[root@itbkz ~]#ps auxf | grep httpd
root   6560  0.0  0.0 112724   992 pts/0  S+  23:16   0:00          \_ grep --color=auto httpd
root   6552  1.0  0.2 230408  5212 ?      Ss  23:16   0:00 /usr/sbin/httpd -DFOREGROUND
apache 6553  0.0  0.1 230408  3028 ?      S   23:16   0:00  \_ /usr/sbin/httpd -DFOREGROUND
apache 6554  0.0  0.1 230408  3028 ?      S   23:16   0:00  \_ /usr/sbin/httpd -DFOREGROUND
apache 6555  0.0  0.1 230408  3028 ?      S   23:16   0:00  \_ /usr/sbin/httpd -DFOREGROUND
apache 6556  0.0  0.1 230408  3028 ?      S   23:16   0:00  \_ /usr/sbin/httpd -DFOREGROUND
apache 6557  0.0  0.1 230408  3028 ?      S   23:16   0:00  \_ /usr/sbin/httpd -DFOREGROUND
加了f参数将显示对应的父进程PPID,看起来更直观,上面S+列下面的Ss即是父进程PPID,父进程PPID号保存在/run/目录下。

3.3.按cpu使用排序

[root@itbkz ~]# ps aux --sort=-%cpu|more
USER     PID %CPU %MEM    VSZ   RSS TTY  STAT START  TIME COMMAND
root    6041  0.3  0.4 476052  8788 ?    Ssl  19:19  0:24 /usr/sbin/NetworkManager --no-daemon
root    6331  0.3  0.9 573816 17104 ?    Ssl  19:19  0:23 /usr/bin/python2 -Es /usr/sbin/tuned -l -P
zabbix 16157  0.3  0.1  81828  2448 ?    S    19:21  0:27 /usr/sbin/zabbix_agentd: collector [idle 1 sec]
zabbix 16161  0.3  0.1  81960  2580 ?    S    19:21  0:30 /usr/sbin/zabbix_agentd: active checks #1 [idle 1 sec]
......略

3.4.按PID小到大排序

[root@itbkz ~]#ps aux --sort pid
USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
root         1  0.3  0.2  44336  4680 ?        Ss   23:01   0:02 /usr/lib/systemd/systemd --switched-root --system --deserialize 22
root         2  0.0  0.0      0     0 ?        S    23:01   0:00 [kthreadd]
root         3  0.0  0.0      0     0 ?        S    23:01   0:00 [ksoftirqd/0]

3.5.按PID大到小排序

[root@itbkz ~]#ps aux --sort -pid
USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
root      6428  0.0  0.1 155744  2240 pts/0    R+   23:11   0:00 ps aux --sort -pid
root      6408  0.1  0.1 115572  2088 pts/0    Ss   23:11   0:00 -bash
root      6406  1.0  0.3 161364  6064 ?        Ss   23:11   0:00 sshd: root@pts/0

3.6.查看系统服务进程

[root@itbkz ~]# ps -le
F S   UID   PID  PPID  C PRI  NI ADDR SZ WCHAN  TTY          TIME CMD
4 S     0     1     0  0  80   0 - 47980 ep_pol ?        00:00:12 systemd
1 S     0     2     0  0  80   0 -     0 kthrea ?        00:00:01 kthreadd
1 S     0     3     2  0  80   0 -     0 smpboo ?        00:00:00 ksoftirqd/0
1 S     0     5     2  0  60 -20 -     0 worker ?        00:00:00 kworker/0:0H
1 S     0     6     2  0  80   0 -     0 worker ?        00:00:00 kworker/u32:0
1 S     0     8     2  0 -40   - -     0 smpboo ?        00:00:00 migration/0
1 S     0     9     2  0  80   0 -     0 rcu_gp ?        00:00:00 rcu_bh
......略

3.7.自定义字段查看

[root@itbkz ~]#ps axo user,pid,ppid,%cpu,%mem,command
root      6552     1  0.0  0.2 /usr/sbin/httpd -DFOREGROUND
apache    6553  6552  0.0  0.1 /usr/sbin/httpd -DFOREGROUND
apache    6554  6552  0.0  0.1 /usr/sbin/httpd -DFOREGROUND
apache    6555  6552  0.0  0.1 /usr/sbin/httpd -DFOREGROUND
apache    6556  6552  0.0  0.1 /usr/sbin/httpd -DFOREGROUND
apache    6557  6552  0.0  0.1 /usr/sbin/httpd -DFOREGROUND
root      6613  6408  0.0  0.0 grep --color=auto httpd
从上图中可以很直观的看出使用apache用户身份运行的进程的父进程都是6552

IT博客站版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:ps命令查看进程命令
喜欢 (0)
[使用支付宝扫码]
分享 (0)
盛行
关于作者:
企业应用技术爱好者,喜欢分享知识。如果文章中有错误,欢迎指正,谢谢。
发表我的评论
取消评论
表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址