名称
ps - 展示当前进程的信息,以列表呈现
用法
ps [选项]
描述
ps 展示关于运行的进程的信息。如果你想要让这个信息实时更新,请用top。
这个版本的ps接收几种选项:
1 UNIX选项,必须使用’-’
2 BSD选项,必须不能使用’-’
3 GNU长选项,使用’–’
注意,ps -aux 和ps aux 不同。 POSIX 和 UNIX 标准需要 ps -aux 打印所有属于用户x的进程,也打印所有 -a 选项选择的进程。如果用户x不存在,ps可能把这个命令看成ps aux,打印一个警告(warning)。
ps默认选择所有属于相同有效用户ID(euid=EUID)的进程作为当前用户并与调用者同一个终端关联。它展示进程ID(pid=PID)、进程所在的终端(tname=TTY)、[DD-]hh:mm:ss格式的cpu时间和可执行名称(ucmd=CMD)。输出默认不排序。
BSD风格的选项将默认加上进程状态(stat=STAT),展示命令的变量(args=COMMAND)而不是可执行名称。你可以使用PS_FORMAT环境变量覆盖这个。使用BSD风格的选项也会包括你拥有的其他终端(TTYs)的进程,这个也可以描述为:不展示其他用户和其他终端的进程。当选项在下面描述为“相同”时,不考虑这些影响,因此-M将被视为与Z相同,依此类推。
除下文所述外,进程选择选项是附加的。放弃默认选择,然后将所选进程添加到要显示的进程集。因此,如果进程符合任何给定的选择标准,则将显示该进程。
例子
用标准格式展示系统中的每个进程:
ps -e
ps -ef
ps -eF
ps -ely
用BSD格式展示系统中的每个进程:
ps ax
ps aux
展示进程树:
ps -ejH
ps axjf
得到线程信息:
ps -eLf
ps axms
得到安全信息:
ps -eo euser,ruser,suser,fuser,f,comm,label
ps axZ
ps -eM
用用户格式展示root用户运行的进程:
ps -U root -u root u
用用户定义格式展示每个进程:
ps -eo pid,tid,class,rtprio,ni,pri,psr,pcpu,stat,wchan:14,comm
ps -Ao pid,tt,user,fname,tmout,f,wchan
只打印rsyslogd的进程ID:
ps -C rsyslogd -o pid=
只打印进程ID是21的进程名:
ps -q 42 -o comm=
下边是各种参数的用法
简单进程选项
a
解除 BSD 风格的“只有你自己”限制,当使用某些 BSD 风格(没有“-”)选项或 ps 个性设置类似于 BSD 时,该限制强加于所有进程的集合。 以这种方式选择的进程集是通过其他方式选择的进程集的补充。 另一种描述是这个选项会导致 ps 列出所有带有终端 (tty) 的进程,或者与 x 选项一起使用时列出所有进程。
-A
选择所有进程,等于 -e。
-a
选择除了会话领导和与终端无关的进程以外的所有进程。
-d
选择除了会话领导以外的所有进程。
–deselect
选择除了满足特定条件(否定选择)的所有进程。等于 -N。
-e
选择所有进程。等于 -A。
g
所有,包括会话领导。这个选项时过时的,以后的版本可能会取消。
-N
选择除了满足特定条件(否定选择)的所有进程。等于 --deselect。
T
选择所有跟当前终端有关的进程。等于没有任何参数的 t 。
r
只选择正在运行的进程。
x
解除 BSD 风格的“必须有一个 tty”限制,当使用某些 BSD 风格(不带“-”)选项或 ps 个性设置类似于 BSD 时,该限制强加于所有进程的集合。 以这种方式选择的进程集是通过其他方式选择的进程集的补充。 另一种描述是该选项使 ps 列出您拥有的所有进程(与 ps 相同的 EUID),或者在与 a 选项一起使用时列出所有进程。
用列表选择进程
这些选项接收一个空格分隔的列表或逗号分割的列表为参数。列表可以多次使用。
例如:ps -p “1 2” -p 3,4
-123 等于 --pid 123
123 等于 --pid 123
-C cmdlist(命令列表)
选择cmdlist中的命令。注意:命令名不等于命令行。以前的procps版本和内核把命令名 的长度限制在15字符之内。现在这个限制解除了。
-G grplist(组列表)
根据真实组ID(RGID)或组名称选择。真实组ID确定了创建进程的用户所属的组。
-g grplist
根据会话或有效组名来选择。根据会话选择有多重标准,但根据有有效组名是使用一些 其他操作系统也在用的逻辑方法。当列表内容都是数字时,ps会根据会话选择。只有在 一些组名也被指定时,组ID数字才会起作用。参考 -s 和 --group。
–Group grplist
等于 -G。
–group grplist
根据有效组ID(EGID)或组名来选择。这个选项会选择那些有效组名或ID在grplist的进 程。有效组名描述了文件权限被进程使用的组。-g 经常等同于 --group。
p pidlist(进程ID列表)
根据进程ID选择。等于 -p 和 --pid。
-p pidlist
等于 p 和 --pid。
–pid pidlist
等于 p 和 -p。
–ppid pidlist
根据父进程的进程ID选择。
q pidlist
根据进程ID选择(快速模式)。等于 -q 和 --quick-pid。
-q pidlist
ps只读取pidlist中的pid的必要信息,而不会使用额外的筛选规则。pid是无序的。 等于 q 和 --quick-pid。
–quick-pid pidlist
等于q 和 -q。
-s sesslist(会话列表)
根据会话ID选择。
–sid sesslist
等于 -s。
t ttylist
根据tty选择。几乎等于 -t 和 --tty,但是也能使用空的tty列表指定ps关联的终端。当tty 列表为空时,使用T选项是比t更简洁的。
-t ttylist
根据tty选择。终端(tty或文本输出的屏幕)可以使用一下格式:/dev/ttyS1,ttyS1, S1。'-'可以用于选择没有附属于任何终端的进程。
–tty ttylist
根据终端选择。等于 -t 和 t。
U userlist
根据有效用户ID(EUID)或用户名选择。有效用户ID描述了文件权限被进程使用的用户。
等于 -u 和 --user。
-U userlist
根据真实用户ID(RUID)或用户名选择。真实用户ID指的是创建进程的用户。
-u userlist
等于 U 和 --user。
–User userlist
根据真实用户ID(RUID)或用户名选择。等于 -U。
–user userlist
等于 -u 和 U。
输出格式控制
这些选项是用来选择ps展示的信息。
-c 展示 -l 选项的不同调度器信息。
–context
展示安全上下文格式(SELinux)
-f 以完整格式列出。这个选项可以和其他多种UNIX风格的选项加到一起,展示多个列。 也会打印出命令参数。使用 -L 时,NLWP(线程数)和LWP(线程ID)列也会展示出来。
-F 额外的完整格式。
–format format
用户自定义格式。等于 -o 和 o。
j BSD脚本控制格式
-j 脚本格式。
l 展示长BSD格式。
-l 长格式。-y 选项经常一起用。
-M 添加一列安全数据。等于Z(SELinux)
O format
预装了o(超载)。BSD O 选项可以呈现 -O 的效果(使用一些普通字段预定义的用 户自定义输出格式)或者可以用来排序。试探法用于确定此选项的行为。 为确保获得 所需的行为(排序或格式化),请以其他方式指定选项(例如使用 -O 或 --sort)。 当用作格式化选项时,它与 -O 相同,具有 BSD 特性。
-O format
类似 -o,但是使用一些默认列预装了。等于 -o pid,format,state,tname,time,command 或 -o pid,format,tname,time,cmd。
o format
等于 -o ,–format
-o format
用户自定义的格式。format是一个空格分隔或逗号分隔的列表,提供了创建输出列的 方法。可识别的关键词在下边的标准格式说明符中展示。表头可能按照意愿进行重命 名(ps -o pid,ruser=RealUser -o comm=Command)。如果所有列名都是空的 (ps -o pid= -o comm=),那么列名这一行不会被展示。比较宽的列名的列宽度将会 增加,这个可以用来增加列宽,比如WCHAN(ps -o pid,wchan=WIDE-WCHAN- COLUMN -o comm)。显式宽度控制(ps opid,wchan:42,cmd)也是提供的。 ps -o pid=X,comm=Y 的行为因人而异,输出可能是“X,comm=Y”的一列或者“X”和“Y” 的两列。不确定时使用多个 -o 选项。使用环境变量PS_FORMAT指定一个默认值, DefSysV和DefBSD是可以用来选择默认UNIX和BSD列的宏。
s 展示信号格式。
u 展示面向用户的格式
v 展示虚拟内存格式
X 注册器格式
-y 不展示标志(flags),在addr(地址)栏展示rss。这个选项只能跟 -l 一起用。
Z 添加一个安全数据列。等于 -M(SELinux)
输出模式
c 展示真实命令名称。这个是源自执行文件的名称,而不是argv值。命令参数和任何对 它的修改不会被展示。这个选项有效地把args格式关键词改成comm格式关键词,这 对 -f format 选项和各种 BSD风格的格式选项有效,因为这些默认是展示命令参数 的。参考 -f 选项,格式关键词args,格式关键词comm。
–cols n
设置屏幕宽度。
–columns n
设置屏幕宽度。
–cumulative
包括一些被杀掉的子进程数据(作为与父进程的总和)
e 在命令后边展示环境。
f ASCII格式的进程树
–forest
等于 f
h 没有表头。(或者,在BSD风格中,每个屏幕有一个表头)。h 选项是有问题的。标 准BSD ps 使用这个选项在输出的每一页打印表头,但是老版本的Linux ps 使用这个 选项不显示表头。这个版本的 ps 跟Linux一致,不展示表头,除非选择了BSD风格。 不管当前的风格,你可以使用 --headers 和 --no-headers 来在每页打印表头或不打印 表头。
-H 每页展示表头。
k spec
指定排序规则。排序格式是: [+|-]key[,[+|-]key[,…]]。从标准格式说明符选择一个多字 母关键词。“+”是可选的前缀,因为默认顺序是升序或字典顺序。等于 --sort。
例子:ps jaxkuid,-ppid,+pid
ps axk comm o comm,args
ps kstart_time -ef
–lines n
设置屏幕高度。
n WCHAN和USER 用数字格式输出(包括所有类型的UID和GID)
–no-headers
不打印表头。等于 --no-heading。
O order
排序(过载)。BSD O 选项可以呈现 -O 的效果(加上预定义的普通字段的用户自 定义输出格式)或者用来指定排序规则。试探法用于确定此选项的行为。为确保获 得所需的行为(排序或格式化),请以其他方式指定选项(比如:-O 或 --sort)。
对于排序,过时的 BSD O 选项语法是 O[+|-]k1[,[+|-]k2[,…]] 。它根据由单字母短关 键词k1、k2、… 的序列指定的多级排序对进程列表进行排序,如下面过时排序关 键词部分所述。“+”现在是可选的,仅仅在关键词上重新迭代默认排序方向,但可能 有助于区分 O 排序和 O 格式。 “-”只在它前面的关键词上反转方向。
–rows n
设置屏幕高度。
S 总和几种信息,比如CPU使用,从被杀掉的子进程到它们的父进程。这个功能可以 有效检查一个系统,在这个系统中父进程不断分支出短时间存在的子进程。
–sort spec
指定排序规则。排序格式是[+|-]key[,[+|-]key[,…]] 。从标准格式说明符选择一个多 字母关键词。“+”是可选的前缀,因为默认顺序是升序或字典顺序。等于 k。例如: ps jax --sort=uid,-ppid,+pid
w 宽输出。使用两次这个命令可以实现无限制宽度。
-w 宽输出。使用两次这个命令可以实现无限制宽度。
–width n
设置屏幕宽度。
展示线程
H 像进程那样展示线程。
-L 展示线程,可能也会有LWP和NLWP列。
m 在进程后展示线程
-m在进程后展示线程
-T 展示线程,可能也会有SPID列。
其他信息
–help section
打印帮助信息。section的值可以是simple、list、output、threads、misc或all。也可 以用缩写:s|l|o|t|m|a。
–info
打印调试信息。
L 列出所有格式说明符。
V 打印procps-ng的版本。
-V打印procps-ng的版本。
–version
打印procps-ng的版本。
进程状态标志
这些是s,stat,state的输出说明符(表头是“STAT”或“S”)。表示一个进程的状态信息。
D
不可中断休眠(IO)
I(大写i)
空闲内核线程
R
正在运行或可运行(在运行队列)
S
可中断休眠(等一个时间来完成)
T
因作业控制信号而停止
t
在跟踪期间被调试器停止
W
分页(内核2.6.x版本后无效)
X
已杀死(应该永远不会看到)
Z
僵尸进程
在使用BSD格式时,stat可能会展示额外的标志:
<
高优先级
N
低优先级
L
内存有被锁定的页(实时和自定义IO)
s
是会话领导
l(小写L)
是多线程的(使用CLONE_THREAD,类似NPTL pthreads)
在前台进程组里
过时的排序关键词
这些键由 BSD O 选项使用(当它用于排序时)。 GNU --sort 选项不使用这些键,而是使用下面标准格式说明符部分中描述的说明符。 请注意,排序中使用的值是 ps 使用的内部值,而不是某些输出格式字段中使用的“cooked”值(例如,在 tty 上排序将排序为设备编号,而不是根据显示的终端名称)。 如果要对“cooked”值进行排序,请将 ps 输出通过管道传输到 sort 命令中。
键
长版本
功能
c
cmd
简单的可执行名称
C
pcpu
cpu使用
f
flags
长格式 F 字段中的标志
g
pgrp
进程组ID
G
tpgid
控制tty进程组ID
j
cutime
累计用户时间
J
cstime
累计系统时间
k
utime
用户时间
m
min_flt
次要页面错误的数量
M
maj_flt
主要页面错误的数量
n
cmin_flt
累计次要页面错误
N
cmaj_flt
累计主要页面错误
o
session
会话ID
p
pid
进程ID
P
ppid
父进程ID
r
rss
常驻集大小
R
resident
常驻页面
s
size
以kb为单位的内存大小
S
share
共享页面数量
t
tty
控制的tty的设备数量
T
start_time
进程启动的时间
U
uid
用户ID
u
user
用户名
v
vsize
KiB为单位的虚拟内存总大小
y
priority
内核调度优先级
AIX 格式描述符
ps支持AIX格式描述符。类似printf命令的格式。例如,ps -eo “%p %y %x %c”。
代码
参数名
表头
%C
pcpu
%CPU
%G
group
GROUP
%P
ppid
PPID
%U
user
USER
%a
args
COMMAND
%c
comm
COMMAND
%g
rgroup
RGROUP
%n
nice
NI
%p
pid
PID
%r
pgid
PGID
%t
etime
ELAPSED
%u
ruser
RUSER
%x
time
TIME
%y
tty
TTY
%z
vsz
VSZ
标准格式描述符
这里是用于控制输出格式(例如,使用 -o 选项)或者用GNU风格的 --sort对选择的进程进行排序。例如:ps -eo pid,user,args --sort user
这些用户定义的格式描述符可能包括空格:args,cmd,comm,command,fname,ucmd,ucomm,lstart,bsdstart,start。
一些关键词可能不能用来排序。
代码
表头
功能
%cpu
%CPU
以“##.#”为格式的进程cpu使用情况。是一个百分数,但不显示%。
%mem
%MEM
当前使用的内存的百分比。
args
COMMAND
完整的命令。可能包括空格。一个标记为的进程已经部分杀掉了,等待父进程将它完全杀掉。如果这个描述符出现在最后,这个列会延长到屏幕最右边。环境变量 COLUMNS 或 --cols 选项可以用来决定宽度。w 或 -w 选项也可以调整宽度。
blocked
BLOCKED
被屏蔽的信号。
bsdstart
START
命令被执行的时间。如果是24小时之内执行的,输出格式是“ HH:MM”,否则就是“ Mmm:SS”,Mmm是三位数的月份。
bsdtime
TIME
累计的cpu时间,用户+系统。格式是“MMM:SS”。
c
C
处理器使用。百分数。
caught
CAUGHT
捕捉的信号。
cgname
CGNAME
进程属于的控制组的名称。
cgroup
CGROUP
进程属于的控制组。
class
CLS
进程的调度级别。可能的值有:
- 没有上报
TS SCHED_OTHER
FF SCHED_FIFO
RR SCHED_RR
B SCHED_BATCH
ISO SCHED_ISO
IDL SCHED_IDLE
DLN SCHED_DEADLINE
不能识别的值
cls
CLS
等于class。
cmd
CMD
等于args。
comm
COMMAND
等于args。
command
COMMAND
等于args。
cp
CP
十分之一为单位的cpu使用率。
cputime
TIME
累计cpu时间。“[DD-]hh:mm:ss”。
cputimes
TIME
秒为单位的累计cpu时间。
drs
DRS
数据驻留集大小,专用于可执行代码以外的物理内存量。
egid
EGID
进程的有效组ID数量。
egroup
EGROUP
进程的有效组ID。
eip
EIP
指令指针。
esp
ESP
栈指针。
etime
ELAPSED
进程持续时间,[[DD-]hh:]mm:ss。
etimes
ELAPSED
以秒为单位的进程持续时间。
euid
EUID
有效用户ID。
euser
EUSER
有效用户名。应该是文字的,如果宽度允许可以是十进制数字。
f
F
进程的标志。参考上边的进程状态标志部分。
fgid
FGID
文件系统访问组ID。
fgroup
FGROUP
文件系统访问组ID。应该是文字的,如果宽度允许可以是十进制数字。
flag
F
等于f。
flags
F
等于f。
fname
COMMAND
进程可执行文件名的前8个字节。
fuid
FUID
文件系统访问用户ID。别名是fsuid。
fuser
FUSER
文件系统访问用户ID。应该是文字的,如果宽度允许可以是十进制数字。
gid
GID
等于egid。
group
GROUP
等于egroup。
ignored
IGNORED
被忽略的信号。
ipcns
IPCNS
描述进程属于的命名空间的唯一inode数。
label
LABEL
安全标志,更普遍用于SELinux上下文数据。这是用于高安全性系统的强制访问控制。
lstart
STARTED
等于bsdstart。
lsession
SESSION
如果包括了systemd支持,展示进程的登录会话描述符。
luid
LUID
展示进程的登录ID。
lwp
LWP
可调度实体的轻量进程(线程)ID。
lxc
LXC
任务运行所在的lxc容器的名称。如果进程没有在容器内运行,显示‘-’。
machine
MACHINE
如果包含 systemd 支持,则显示分配给 VM 或容器的进程的机器名称。
maj_flt
MAJFLT
发生在这个进程的主要页面错误的数量。
min_flt
MINFLT
发生在这个进程的次要页面错误的数量。
mntns
MNTNS
等于ipcns。
netns
NETNS
等于ipcns。
ni
NI
优先级值。范围从19(最高)到-20(最低)。
nice
NI
等于ni。
nlwp
NLWP
进程中 lwp(线程)的数量。
numa
NUMA
最近使用的处理器的节点。-1意味着NUMA信息获取不到。
nwchan
WCHAN
进程休眠的内核函数地址。如果想要内核函数名,使用wchan。运行的任务显示为‘-’。
ouid
OWNER
如果包括了systemd支持,展示进程的会话的所有者的Unix用户描述符。
pcpu
%CPU
等于%cpu。
pending
PENDING
待办的信号。进程的待办信号不同于单个线程的待办信号。
pgid
PGID
进程组ID,或者进程组领导的进程ID。
pgrp
PGRP
等于pgid。
pid
PID
进程ID。
pidns
PIDNS
等于ipcns。
pmem
%MEM
等于%mem。
policy
POL
等于class。
ppid
PPID
父进程ID。
pri
PRI
进程优先级。数字越大,优先级越低。
psr
PSR
进程被分配的处理器。
rgid
RGID
真实组ID。
rgroup
RGROUP
真实组名。应该是文字的,如果宽度允许可以是十进制数字。
rss
RSS
常驻集大小,任务已使用的非交换物理内存(以kb为单位)。
rssize
RSS
等于rss。
rsz
RSZ
等于rss。
rtprio
RTPRIO
真实时间优先级。
ruid
RUID
真实用户ID。
ruser
RUSER
真实用户ID。应该是文字的,如果宽度允许可以是十进制数字。
s
S
展示最小状态(一个字符)。参考进程状态标志。
sched
SCH
进程的调度策略。
SCHED_OTHER (SCHED_NORMAL)、SCHED_FIFO、SCHED_RR、SCHED_BATCH、SCHED_ISO、SCHED_IDLE 和 SCHED_DEADLINE 分别对应0、1、2、3、4、5和6。
seat
SEAT
如果包括了systemd支持,展示与分配给特定工作区的硬件设备有关的描述符。
sess
SESS
会话ID,或者会话领导的会话ID。别名session。
sgi_p
P
进程当前执行所在的处理器。如果进程没有运行或不可运行,展示“*”。
sgid
SGID
保存的组ID。
sgroup
SGROUP
保存的组ID。应该是文字的,如果宽度允许可以是十进制数字。
sid
SID
等于sess。
sig
PENDING
等于pending。
sigcatch
CAUGHT
等于caught。
sigignore
IGNORED
等于ignored。
sigmask
BLOCKED
等于blocked。
size
SIZE
如果进程要弄脏所有可写页面然后被换出,大约需要的交换空间量。 这个数字很粗糙!
slice
SLICE
如果包括了systemd支持,展示进程属于的切片单元。
spid
SPID
等于lwp。
stackp
STACKP
进程的栈的底(开始)的地址。
start
STARTED
等于bsdstart。
start_time
START
等于bsdstart。
stat
STAT
多字符的进程状态。参考进程状态标志。
state
S
等于s。
suid
SUID
保存的用户ID。
supgid
SUPGID
补充组的组ID。
supgrp
SUPGRP
补充组的组名称。
suser
SUSER
保存的用户名。应该是文字的,如果宽度允许可以是十进制数字。
svgid
SVGID
等于sgid。
svuid
SVUID
等于suid。
sz
SZ
进程核心映像的物理页大小。这包括文本、数据和堆栈空间。设备映射当前被排除。
tgid
TGID
用数字表示任务属于的线程组。是线程组领导的进程ID。
thcount
THCNT
等于nlwp。
tid
TID
等于lwp。
time
TIME
等于cputime。
times
TIME
等于cputimes。
tname
TTY
控制tty(终端)。
tpgid
TPGID
进程连接到的 tty(终端)上的前台进程组的 ID,如果进程未连接到 tty,则为 -1。
trs
TRS
专用于可执行代码的文本驻留集大小、物理内存数量。
tt
TT
等于tname。
tty
TT
等于tname。
ucmd
CMD
等于comm。
ucomm
COMMAND
等于comm。
uid
UID
等于euid。
uname
USER
等于euser。
unit
UNIT
如果包括了systemd支持,展示进程属于的单位。
user
USER
等于euser。
userns
USERNS
等于ipcns。
utsns
UTSNS
等于ipcns。
uunit
UUNIT
如果包括了systemd支持,展示进程属于的用户单位。
vsize
VSZ
等于vsz。
vsz
VSZ
已KiB为单位的进程的虚拟内存大小。设备映射当前被排除。
wchan
WCHAN
进程休眠的内核函数地址。运行的任务显示为‘-’。如果ps没有展示线程,多线程的进程显示为‘*’。
环境变量
这些环境变量可以影响ps:
COLUMNS
覆盖默认展示宽度。
LINES
覆盖默认展示高度。
PS_PERSONALITY
设置为posix、old、linux、bsd、sun、digital等,参考下边的特性。
CMD_ENV
设置为posix、old、linux、bsd、sun、digital等,参考下边的特性。
I_WANT_A_BROKEN_PS
强制过时的命令行解释。
LC_TIME
日期格式。
PS_COLORS
当前不支持。
PS_FORMAT
覆盖默认输出格式。可以使用 -o 选项设置。DefSysV 和 DefBSD 是有用的。
POSIXLY_CORRECT
不要找借口忽略不好的特性。
POSIX2
设置为开启时,和POSIXLY_CORRECT一样效果。
UNIX95
不要找借口忽略不好的特性。
_XPG
取消CMD_ENV=irix 不标准的行为。
一般来说,设置这些环境变量不是好主意。唯一的例外是 CMD_ENV 或 PS_PERSONALITY,可以设置为 Linux 作为普通系统。如果不这么做,ps 会使用不好的、没用的 Unix98 标准。
特性(简单看看)
390 类似OS/390 开放版本 ps
aix 类似AIXps
bsd 类似FreeBSD ps (完全非标准)
compaq 类似 Digital Unix ps
debian 类似旧的Debian ps
digital 类似Tru64 (以前是Digital Unix,OSF/1) ps
gnu 类似旧的Debian ps
hp 类似 HP-UX ps
hpux 类似 HP-UX ps
irix 类似 Irix ps
linux 推荐
old 类似原始 Linux ps(完全非标准)
os390 类似 OS/390 开放版本 ps
posix 标准
s390类似 OS/390 开放版本 ps
sco 类似 SCO ps
sgi 类似Irix ps
solaris2 类似 Solaris 2+ (SunOS 5) ps
sunos4 类似 SunOS 4 (Solaris 1)ps
svr4 标准
sysv 标准
tru64 类似 Tru64(以前是Digital Unix,OSF/1) ps
unix 标准
unix95 标准
unix98 标准