如何使用`ps`(进程状态)的关键字?

时间:2017-06-02 15:54:35

标签: bash command-line process ps

我正在尝试使用命令ps显示活动进程的内存使用情况。我在手册中读到可以使用与%mem-O相关联的关键字-o,但我无法理解。

当我尝试例如

ps -a -o=%mem

我得到了关键字列表

%cpu %mem acflag acflg args blocked caught comm command cpu cputime etime f flags gid group ignored inblk inblock jobc ktrace
ktracep lim login logname lstart majflt minflt msgrcv msgsnd ni nice nivcsw nsignals nsigs nswap nvcsw nwchan oublk oublock p_ru
paddr pagein pcpu pending pgid pid pmem ppid pri pstime putime re rgid rgroup rss ruid ruser sess sig sigmask sl start stat state
stime svgid svuid tdev time tpgid tsess tsiz tt tty ucomm uid upr user usrpri utime vsize vsz wchan wq wqb wql wqr xstat

我知道我也可以使用top获取此信息,但我想使用ps,因为我认为不能以方便的方式管道top的输出。

我在MAC OS X 10.11.3上使用bash(终端版本3.6.1)

1 个答案:

答案 0 :(得分:1)

从MacOS手册页的语法摘要中,重点补充:

  

ps [-AaCcEefhjlMmrSTvwXx] [-O fmt | -o fmt ] [-G gid [,gid ...]] [-g grp [,grp ...]] [-u uid [,uid ...]] [-p pid [,pid ...]] [-t tty [,tty ...]] [-U用户[,用户...]]

值得注意的是,-o fmt不是-o=fmt - 并且用空格替换命令中的=可以防止出现相关错误。