概述
ps命令支持三种不同类型的选项
- UNIX选项,以
-
符号开头 - BSD选项,不能包含
-
- GUN选项,以
--
符号开头
不同类型的选项可以自由混合,但是有可能会产生冲突。
示例
Unix模式显示系统中的所有process进程
1 | ps -e |
BSD模式显示系统中的所有process进程
1 | ps ax |
树状显示系统中所有process进程
1 | ps -ejH |
树状显示系统中的所有threads线程
1 | ps -eLf |
To get security info
1 | ps -eo euser,ruser,suser,fuser,f,comm,label |
To see every process running as root (real & effective ID) in user format
1 | ps -U root -u root u |
To see every process with a user-defined format
1 | ps -eo pid,tid,class,rtprio,ni,pri,psr,pcpu,stat,wchan:14,comm |
Print only the process IDs of syslogd
1 | ps -C syslogd -o pid= |
Print only the name of PID 42
1 | ps -q 42 -o comm= |
常用选项
选项 | 说明 |
---|---|
-A -e |
显示所有进程信息 |
-123 123 --pid pidlist -p pidlist p pidlist |
显示pidlist中指定的所有pid的进程信息 接受空白分隔或逗号分隔的列表形式的单个参数,如 -p "123,124" 或-p "123 124" |
-U userlist --User userlist |
显示userlist中指定的RUID(real user id)或name的进程信息 RUID表示create该进程的用户 |
U userlist -u userlist --user userlist |
显示userlist中指定的EUID(effective user id)或name的进程信息 EUID用于系统决定用户对文件资源的访问权限,一般情况下等同于RUID |
-f -F |
显示所有的列,通常与其它unix格式选项联合使用 使用该参数时会显示进程的命令参数信息 与 -L 参数同时使用时,还会显示NLWP(number of threads)和LWP(thread id)信息 |
e |
在命令列中最后显示进程的环境变量信息,如 ps -ef e |
f |
ASCII字符显示树状结构, 表示程序间的层次关系 |
-m m |
显示进程中的线程信息 |
-L |
Show threads, possibly with LWP and NLWP columns |
o format -o format --format format |
用户自定义格式。 format可以是一个空白或逗号分割的列表,用于指定输出的列,支持的列表内容见 输出列内容 列的表头内容可以重命名 ps -o pid,ruser=RealUser 列的表头可以忽略 ps -o pid=,comm= |
上述中xxxlist的内容,表示接受空白分割或逗号分割的列表形式的单个参数