介绍
ps(英文全拼:process status)命令用于显示当前进程的状态,类似于 windows 的任务管理器。
语法:
ps [选项]
参数:
ps 的参数非常多, 在此仅列出几个常用的参数:
-A
:列出所有的进程-e
:此选项的效果和指定”A”选项相同-f
:显示 UID、PPIP、C 与 STIME 栏目-w
:显示加宽可以显示较多信息-au
:显示较详细的信息-aux
:显示所有包含其他使用者的行程
ps 命令有两种展示风格:
ps -ef 命令 |
ps aux 命令 |
|
---|---|---|
展示风格 | System V 风格 | BSD 风格 |
指令名称 | 显示带全路径的进程名 | 会截断 command 列 |
示例
查看进程(System V 风格)
$ ps -ef | head
UID PID PPID C STIME TTY TIME CMD
root 1 0 0 09:19 ? 00:00:03 /sbin/init splash
root 2 0 0 09:19 ? 00:00:00 [kthreadd]
root 4 2 0 09:19 ? 00:00:00 [kworker/0:0H]
root 6 2 0 09:19 ? 00:00:00 [mm_percpu_wq]
root 7 2 0 09:19 ? 00:00:00 [ksoftirqd/0]
root 8 2 0 09:19 ? 00:00:40 [rcu_sched]
root 9 2 0 09:19 ? 00:00:00 [rcu_bh]
root 10 2 0 09:19 ? 00:00:00 [migration/0]
root 11 2 0 09:19 ? 00:00:00 [watchdog/0]
列表含义:
UID
:程序被该 UID 所拥有PID
:就是这个程序的进程 IDPPID
:是其上级父进程的 IDC
:表示 CPU 使用的资源百分比STIME
:表示进程启动时间TTY
:登入者的终端机位置TIME
:使用掉的 CPU 时间CMD
:所下达的指令为何
查看进程(BSD 风格)
$ ps aux | head
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
root 1 0.0 0.0 185576 6164 ? Ss 09:19 0:03 /sbin/init splash
root 2 0.0 0.0 0 0 ? S 09:19 0:00 [kthreadd]
root 4 0.0 0.0 0 0 ? I< 09:19 0:00 [kworker/0:0H]
root 6 0.0 0.0 0 0 ? I< 09:19 0:00 [mm_percpu_wq]
root 7 0.0 0.0 0 0 ? S 09:19 0:00 [ksoftirqd/0]
root 8 0.1 0.0 0 0 ? I 09:19 0:41 [rcu_sched]
root 9 0.0 0.0 0 0 ? I 09:19 0:00 [rcu_bh]
root 10 0.0 0.0 0 0 ? S 09:19 0:00 [migration/0]
root 11 0.0 0.0 0 0 ? S 09:19 0:00 [watchdog/0]
列表含义:
USER
:进程拥有者PID
:进程 ID%CPU
:占用的 CPU 使用率%MEM
:占用的记忆体使用率VSZ
:占用的虚拟记忆体大小RSS
:占用的记忆体大小TTY
:终端的次要装置号码(minor device number of tty)STAT
:该形成的状态,Linux 的进程有5种状态:D
:不可中断 uninterruptible sleep(usually IO)R
:运行 runnable(on run queue)S
:中断 sleepingT
:停止 traced or stoppedZ
:僵死 a defunct (“zombie”) process- 注:其他状态还包括
W
(无驻留页),<
(高优先级进程),N
(低优先级进程),L
(内存锁页)。
START
:进程开始时间TIME
:执行的时间COMMAND
:所执行的指令
显示指定用户信息(例如 root 用户):
$ ps -u root