Linux - 进程查看 ps

ps 命令:显示进程在某个时间点运行情况的状态

查看命令帮助

$ ps -help
ps: option requires an argument -- p
usage: ps [-AaCcEefhjlMmrSTvwXx] [-O fmt | -o fmt] [-G gid[,gid...]]
          [-g grp[,grp...]] [-u [uid,uid...]]
          [-p pid[,pid...]] [-t tty[,tty...]] [-U user[,user...]]
       ps [-L]

参数含义

  • -A 列出所有的行程
  • -w 显示加宽可以显示较多的资讯
  • -au 显示较详细的资讯
  • -aux 显示所有包含其他使用者的行程

au(x) 输出格式 :

  • USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
  • USER: 行程拥有者
  • PID: pid
  • %CPU: 占用的 CPU 使用率
  • %MEM: 占用的记忆体使用率
  • VSZ: 占用的虚拟记忆体大小
  • RSS: 占用的记忆体大小
  • TTY: 终端的次要装置号码 (minor device number of tty)
  • STAT: 该行程的状态:
    • D: 无法中断的休眠状态 (通常 IO 的进程)
    • R: 正在执行中
    • S: 静止状态
    • T: 暂停执行
    • Z: 不存在但暂时无法消除
    • W: 没有足够的记忆体分页可分配
    • <: 高优先序的行程
    • N: 低优先序的行程
    • L: 有记忆体分页分配并锁在记忆体内 (实时系统或捱A I/O)
  • START: 行程开始时间
  • TIME: 执行的时间
  • COMMAND:所执行的指令

1. ps aux :查看系统所有的进程数据

$ ps aux
USER               PID  %CPU %MEM      VSZ    RSS   TT  STAT STARTED      TIME COMMAND
jihan              977   7.9  2.3  6014800 390752   ??  S    12:33下午   1:01.80 /Applications/QQ.app/Contents/MacOS/QQ
jihan              335   4.4  1.2  5296972 205232   ??  S    10:53上午   0:42.91 /Applications/iTerm.app/Contents/MacOS/iTerm2 -psn_0_127007
_windowserver      166   1.8  1.4  6799700 227836   ??  Ss   10:52上午   6:28.06 /System/Library/PrivateFrameworks/SkyLight.framework/Resources/Window

2. ps -l 只查自己bash程序进程状态

$ ps -l
  UID   PID  PPID        F CPU PRI NI       SZ    RSS WCHAN     S             ADDR TTY           TIME CMD
  501   399   335     4006   0  31  0  4391984  20000 -      Ss                  0 ttys000    0:00.06 /Applications/iTerm.app/Contents/MacOS/iTerm2
  501   403   401     4006   0  31  0  4320100   1604 -      S                   0 ttys000    0:00.10 -bash
  501   400   335     4006   0  31  0  4375600  19964 -      Ss                  0 ttys001    0:00.06 /Applications/iTerm.app/Contents/MacOS/iTerm2
  501   404   402     4006   0  31  0  4320100   1580 -      S+                  0 ttys001    0:00.06 -bash

3. ps -lA 列出所有进程

$ ps -lA
  UID   PID  PPID        F CPU PRI NI       SZ    RSS WCHAN     S             ADDR TTY           TIME CMD
    0     1     0     4004   0  37  0  4415352  18336 -      Ss                  0 ??         0:18.44 /sbin/launchd
    0    40     1     4004   0   4  0  4396476   1608 -      Ss                  0 ??         0:00.56 /usr/sbin/syslogd
    0    41     1     4004   0  31  0  4423892  19896 -      Ss                  0 ??         0:01.04 /usr/libexec/UserEventAgent (System)
    0    44     1     4004   0  20  0  4362324   5412 -      Ss                  0 ??         0:00.29 /System/Library/PrivateFrameworks/Uninstall.fr
    0    45     1     4004   0  37  0  4498312  76420 -      Ss                  0 ??         0:05.88 /usr/libexec/kextd

猜你喜欢

转载自www.cnblogs.com/smallyi/p/11950020.html