在linux中 - 显示所有进程的列表,并注意它们是否正在运行或暂停

时间:2015-11-17 15:13:42

标签: linux

我是linux的新手。

如果每个进程正在运行或暂停,如何显示所有进程列表?  我试过了

ps -ef|grep myusername

但它没有说明进程是否正在运行。 也尝试了

ps ux

同样的事情,它没有说明进程是否正在运行。

我正在寻找类似这样的列表: I get this list when I move a process to background, I don't know how to see it otherwise...

4 个答案:

答案 0 :(得分:1)

您可以使用“ps”列出进程,这(ps aux)将列出所有进程。给出下面的示例输出。

ps aux |更

USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND 

root         1  0.0  0.1 189160  9376 ?        Ss   15:51   0:04 /usr/lib/systemd/systemd --switched-root --system --deserialize 20

root         2  0.0  0.0      0     0 ?        S    15:51   0:00 [kthreadd]
root         3  0.0  0.0      0     0 ?        S    15:51   0:00 [ksoftirqd/0]
root         5  0.0  0.0      0     0 ?        S<   15:51   0:00 [kworker/0:0H]
root         7  0.0  0.0      0     0 ?        S    15:51   0:06 [rcu_sched]
root         8  0.0  0.0      0     0 ?        S    15:51   0:00 [rcu_bh]
root         9  0.0  0.0      0     0 ?        S    15:51   0:04 [rcuos/0]

通过检查过程的STAT(在“STAT”下),您可以识别过程状态,以下是一些可能的状态代码。

  • R正在运行或可运行(在运行队列中)
  • D不间断睡眠(通常是IO)
  • S可中断的睡眠(等待事件完成)
  • Z defunct / zombie,终止但未被其父母收获
  • T通过作业控制信号或因为它正在停止 追踪

您可以输入“man ps”以获取更多信息。

答案 1 :(得分:0)

答案 2 :(得分:0)

ps -p PID -o comm =

输入上面的代码,其中PID是过程的PID。

答案 3 :(得分:0)

以下命令对您更有帮助。

使用命令:sudo lsof -i -n -P

此命令列出应用程序名称,PID,用户,IP版本,设备ID和具有端口名称的节点。它显示TCP和UDP。

变化:

以漂亮,可读的方式对其进行格式化;使用:

sudo lsof -i -n -P | more

仅查看TCP连接:

sudo lsof -i -n -P | grep TCP | more

仅查看UDP连接:

sudo lsof -i -n -P | grep UDP | more