在 Linux 中,如何查看服务器上僵尸进程的数量()
A. ps -ef stat,ppid,pid,cmd | awk ‘$1 ~ /R/ {print}’ | wc -l
B. ps -ef stat,ppid,pid,cmd | awk ‘$1 !~ /S/ {print}’ | wc -l
C. ps -eo stat,ppid,pid,cmd | awk ‘$1 ~ /Z/ {print}’ | wc -l
D. ps -eo stat,ppid,pid,cmd | awk ‘$1 ~ /D/ {print}’ | wc -l
ps
命令用于查看系统中进程的信息:
-e
参数用于显示所有进程-o
参数用于设定输出格式,这里只输出进程的 stat(状态信息)、ppid(父进程pid)、pid(当前进程的pid),cmd(即进程的可执行文件)-f
参数用于显示完整的格式对于 ps 显示的进程状态,通常来说有以下几种:
D
不可中断 uninterruptible sleep (usually IO)R
运行 runnable (on run queue)S
中断 sleepingT
停止 traced or stoppedZ
僵死 a defunct (“zombie”) process通过 awk
命令找出第一列包含 Z 状态的所有进程,$1
表示按照默认分隔符分隔后的第一列的字段,即进程的状态信息,~
表示匹配后面的正则,/Z/
表示匹配的正则,这里表示匹配 “Z”。
最后通过 wc -l
命令统计出所有僵尸进程的数量。
正确答案:C