如何在顶部查看完整的过程列表


14

当我执行“ top”时,我了解到有许多进程正在运行,其中许多处于睡眠状态。此时,我需要查看所有过程的完整快照。``顶部''能够在一个屏幕上显示流程列表,如何获得完整的列表?

除其他事项外,我对查看处于“睡眠”状态的所有进程的列表感兴趣。我不认为,我可以在“ ps”命令的输出中获取进程状态


1
看看你有没有htop。它的进程列表是可滚动的。
manatwork 2012年

Answers:


16

top -b 似乎在解决问题。


2
添加-n1选项将给出一个整页,然后退出。
enzotib 2012年

1
不幸的是,这不允许交互操作。
Ciro Santilli新疆改造中心法轮功六四事件2014年

1
注意:尽管该问题被标记为linux,但它top -l1可以在OS X / macOS中列出所有具有状态的进程,尽管%CPU对于带有-l的单个样本来说是不正确的,因为它是使用样本之间的差异来计算的。
加里·韦弗

@ GaryS.Weaver谢谢!
hey_you

4

您可以使用coreutils获取进程状态 ps

$ ps aux

将列出所有这些,以及更多。您可以从手册页中解码它们:

过程状态码

以下是s,stat和状态输出说明符(标题“ STAT”或“ S”)将显示的不同值,以描述进程的状态:

   D    uninterruptible sleep (usually IO)
   R    running or runnable (on run queue)
   S    interruptible sleep (waiting for an event to complete)
   T    stopped, either by a job control signal or because it is being traced.
   W    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 parent.

对于BSD格式,当使用stat关键字时,可能会显示其他字符:

   <    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 leader
   l    is multi-threaded (using CLONE_THREAD, like NPTL pthreads do)
   +    is in the foreground process group.
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.