在下面,top命令可以查看查看stopped进程。但是不能查看stopped进程的详细信息。那么如何查看stopped 进程,并且杀掉这些stopped进程呢?
ps -e j | grep T
stopped进程的STAT状态为T,一般而言,进程有下面这些状态码:
D uninterruptible sleep (usually IO)I Idle kernel threadR running or runnable (on run queue)S interruptible sleep (waiting for an event to complete)T stopped by job control signalt stopped by debugger during the tracingW paging (not valid since the 2.6.xx kernel)X dead (should never be seen)Z defunct ("zombie") process, terminated but not reaped by its parentfor BSD formats and when the stat keyword is used, additionalrs may be displayed:< high-priority (not nice to other users)N low-priority (nice to other users)L has pages locked into memory (for real-time and custom IO)s is a session leaderl is multi-threaded (using CLONE_THREAD, like NPTL pthreads do)+ is in the foreground process group
一般较常见的是5种状态码:
D 不可中断 uninterruptible sleep (usually IO) R 运行 runnable (on run queue) S 中断 sleeping T 停止 traced or stopped Z 僵死 a defunct (”zombie”) process
所以,可以用下面命令ps -A -ostat,ppid,pid,cmd | grep -e ‘^[T]‘ 查看stopped的进程信息,进而使用kill命令将进程完全杀死。如下所示:
# ps -A -ostat,ppid,pid,cmd | grep -e '^[T]'T 6777 8635 more alert_pps.logT 6777 9654 tail -60f alert_pps.logT 6777 10724 top# kill -9 8635# ps -A -ostat,ppid,pid,cmd | grep -e '^[T]'T 6777 9654 tail -60f alert_pps.logT 6777 10724 top# kill -9 9654# kill -9 10724