|
查看所有进程的完整信息标准语法:beyes@linux-beyes:~> ps -ef
UID PID PPID C STIME TTY TIME CMD
root 1 0 0 May31 ? 00:00:01 init [5]
root 2 0 0 May31 ? 00:00:00 [kthreadd]
root 3 2 0 May31 ? 00:00:00 [migration/0]
root 4 2 0 May31 ? 00:00:14 [ksoftirqd/0]
... ... ... 查看所有进程的完整信息 BSD 语法 :beyes@linux-beyes:~> ps ax
PID TTY STAT TIME COMMAND
1 ? Ss 0:01 init [5]
2 ? S< 0:00 [kthreadd]
3 ? S< 0:00 [migration/0]
4 ? S< 0:14 [ksoftirqd/0]
... ...
2004 ? Ss 0:03 /sbin/mount.ntfs-3g /dev/sda1 /windows/C -v -o rw,noe
2008 ? Ss 0:00 /sbin/mount.ntfs-3g /dev/sdb1 /windows/D -v -o rw,noe
2012 ? Ss 0:00 /sbin/mount.ntfs-3g /dev/sda5 /windows/E -v -o rw,noe
... ... 或beyes@linux-beyes:~> ps axu
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
root 1 0.0 0.0 1008 384 ? Ss May31 0:01 init [5]
root 2 0.0 0.0 0 0 ? S< May31 0:00 [kthreadd]
root 3 0.0 0.0 0 0 ? S< May31 0:00 [migration/0]
... ...
root 2004 0.0 0.0 4248 1288 ? Ss May31 0:03 /sbin/mount.ntf
root 2008 0.0 0.0 4064 1016 ? Ss May31 0:00 /sbin/mount.ntf
root 2012 0.0 0.0 4064 1012 ? Ss May31 0:00 /sbin/mount.ntf
... ...
查看进程的优先级[root@groad.net ~]# ps -l
F S UID PID PPID C PRI NI ADDR SZ WCHAN TTY TIME CMD
4 S 0 3127 3121 0 80 0 - 1282 - pts/0 00:00:00 bash
4 R 0 3148 3127 0 80 0 - 1220 - pts/0 00:00:00 ps 上面所示:
PRI 是内核调度的优先级;
NI 是进程的优先级;
F 一般有两个值:
4 : 此程序被 fork 出来,但没有执行 exec ADDR/SZ/WCHAN 这 3 个量都与内存有关。ADDR 是进程的内存地址,一般运行中的进程显示的是 '-' 符号,看不到其地址。SZ 使用的物理内存。WCHAN 是一个内核函数的地址,进程在此休眠,如果进程处于运行状态,那么该处显示的也是 '-' 符号。
TIME 是使用掉的实际的 CPU 时间,注意不是系统时间。
[root@groad.net ~]# ps aux |head -5
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
root 1 0.0 0.0 2900 1332 ? Ss Jun08 0:01 /sbin/init
root 2 0.0 0.0 0 0 ? S Jun08 0:00 [kthreadd]
root 3 0.0 0.0 0 0 ? S Jun08 0:00 [migration/0]
root 4 0.0 0.0 0 0 ? S Jun08 0:00 [ksoftirqd/0]
S 是运行状态,见表1-1。
C 是 CPU 使用率,单位是百分比。
表1-1:
状态码
| 描述
| S
| 睡眠(阻塞)。通常是等待一个事件发生,如一个信号或者输入可用
| R
| 运行。严格的讲,是“可运行”,其意是在运行队列上要么正在执行的要么是准备运行的
| D
| 不可中断(waiting)。通常等待输入或输出完成
| T
| 停止。通常由shell作业控制或一个在调试器控制下的进程来停止
| Z
| zombie 僵尸进程
| N
| 低优先级任务, "nice"
| W
| 页式调度(2.6内核之前不支持)
| s
| 进程是一个会话期首进程
| +
| 进程在前台进程组中
| l
| 多线程进程
| <
| 高优先级任务
|
选项:
选项
| 描述
| l
| 使用长格式显示
| u
| 使用用户格式(显示用户名称和启动时间)
| j
| 使用作业格式(显示进程gid和sid)
| s
| 使用信号格式
| v
| 使用vm格式
| m
| 显示内存信息
| f
| 使用"森林型"格式(将进程显示为树型)
| a
| 显示其他用户进程
| x
| 显示不带控制终端的进程
| S
| 显示子CPU和时间以及页面错误
| c
| 用于task_struct的命令名称
| e
| 在命令行和a+后显示环境
| w
| 使用宽输出格式
| h
| 不显示标题
| r
| 只显示正在运行的进程
| n
| 显示USER和WCHAN的数字输出
| txx
| 显示终端ttyxx控制的进程
| O
| 使用排序键k1,k2等等对进程清单进行排序
| pids
| 只显示指定的pid
|
[root@centos ~]# ps -o pid,ppid,session,tpgid,comm
PID PPID SESS TPGID COMMAND
12354 12350 12354 14290 bash
14290 12354 12354 14290 ps PID : 当前进程 ID
PPID : 父进程 PID
SESS : 会话 id
TPGID : 前台进程组 id
COMMAND : 命令名称 |
|