PSを使用したフォアグラウンドプロセスの表示


9

psを使用してバックグラウンドプロセスを確認できます。しかし、フォアグラウンドプロセスを表示する方法はありますか?例えば、

$ nohupプロセス1&

その後

ps -ef | grep "プロセス1"

実行中のプロセス「process1」を表示します。しかし、上記のコマンドでは、次のように実行されるフォアグラウンドプロセスは表示されません。

$ process2


ps -efすべてのフォアグラウンドプロセスが表示されます。どのOSを実行していますか?
バハマト

2
「ps」と入力しても、process2がまだ実行されていますか?多分それはすでに行われています。
Huang F. Lei

プロンプトが表示されるまでに、フォアグラウンドプロセスが完了しています。
フォンブランド2013年

回答:


6

psデフォルトでpsは、同じターミナルウィンドウから起動されたプロセスなど、呼び出されたのと同じターミナルにあるプロセスがデフォルトで表示されるため、混乱する可能性があります。

試すps -u $LOGNAMEか、端末名がわかっている場合ps -t $THETTYNAME1,$THETTYNAME2。(通常、端末名は「ttyN」または「pts / N」のようになります)。


ps - ef「this」端末上のプロセスだけでなく、すべてのプロセスを表示します。
バハマート

1

奇妙なことに、psコマンドを使用すると、フォアグラウンドとバックグラウンドの両方で、すべてのアクティブなプロセスのステータスを監視できます。

たとえば、最初のシェルで次のプロセスを開始します。

$ 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

プロセスは期待どおりにリストされます(そして、+プロセスがフォアグラウンドプロセスグループにあることを示します)。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.