常用参数: -e 查看所有进程(-A和-e作用相同) -f 格式化,可以理解为打印的列更多,更好看
常用的组合:
# 查看所有 ps -ef # 这个可以查看占用的内存 ps -auxps -aux的显示效果一般如下表:
USERPID%CPU%MEMVSZRSSTTYSTATSTARTTIMECOMMANDroot288372.98.04755400648340pts/2Sl11:165:28相关命令(可能会很长,不详述)列对应的意思: USER 用户 PID 进程id(process id) CPU cpu使用率(%) MEM 内存占用率(%) VSZ 虚拟内存 RSS 物理内存 TTY STAT 启动时间 TIME 已运行时间(用掉的cpu时间) COMMAND 运行命令/启动命令
UID 用户ID PID 进程ID PPID 进程ID父进程ID C cpu使用率(%) STIME 启动时间 TTY TIME 已运行时间(用掉的cpu时间) CMD 运行命令/启动命令
ps -ef | grep service 为什么不显示列 ? 只能说水平太高了,直接到了应用层面了,换个简单的命令: ps -ef | head 是不是发现第一行就是列名。
man ps命令查看ps手册, 键入 /FORMAT SPECIFIERS ,找到格式定义,这块内容就是列字段说明。
我发现我真是无聊。 手册描述为:
-a Select all processes except both session leaders (see getsid(2)) and processes not associated with a terminal. -e Select all processes. Identical to -A.也没看出区别在哪,把这2个都理解为都是选择全部基本就差不多了。
用-o即可。 例如,只输出 pid,用户?
ps -eo pid,user-o 后面跟要显示的列即可。
不对。 因为-f是默认格式化输出,表示输出所有列。 -f和-o是不能一起使用的。