使用ps查看前台进程


9

我可以看到使用ps的后台进程。但是,有没有办法查看前台流程?例如,

$ nohup process1&

然后

ps -ef | grep“ process1”

将在执行中显示进程“ process1”。但是上面的命令不会显示像

$ process2


ps -ef显示了我的所有前台流程。您在哪个操作系统上运行?
bahamat 2011年

2
您确定在输入“ ps”时process2仍在运行吗?也许已经完成了。
Huang F. Lei

等到您收到提示时,前台过程就完成了。
vonbrand 2013年

Answers:


6

您可能会感到困惑,因为ps默认情况下会向您显示ps被调用的同一终端上的进程,例如从同一终端窗口启动的进程。

尝试ps -u $LOGNAME或如果您知道终端名称ps -t $THETTYNAME1,$THETTYNAME2。(终端名称通常看起来像“ ttyN”或“ pts / N”)。


ps - ef显示所有进程,而不仅仅是“ this”终端上的进程。
bahamat 2011年

1

很奇怪,ps命令允许您监视所有活动进程的状态,包括前台和后台。

例如,我在第一个shell中开始以下过程:

$ startNetworkServer 
Security manager installed using the Basic server security policy.
Apache Derby Network Server - 10.3.2.1 - (599110) started and ready to accept connections on port 1527 at 2010-06-18 14:14:33.277 GMT 

在另一个外壳中:

$ ps aux  | grep NetworkServer | grep -v grep
pascal    5928  0.3  1.4 661492 29216 pts/0    Sl+  16:14   0:03 /usr/lib/jvm/java-6-sun/bin/java -classpath /usr/share/javadb/lib/derby.jar:/usr/share/javadb/lib/derbynet.jar:/usr/share/javadb/lib/derbytools.jar:/usr/share/javadb/lib/derbyclient.jar org.apache.derby.drda.NetworkServerControl start

该进程将按预期列出(并且+显示该进程处于前台进程组中)。

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.