Просмотр процесса переднего плана с помощью ps

9

Я могу видеть фоновый процесс, используя PS. Но есть ли способ просмотреть процесс на переднем плане? Например,

$ nohup process1 &

тогда

ps -ef | grep "process1"

будет отображать процесс "process1" в исполнении. Но приведенная выше команда не будет отображать процесс переднего плана, выполняемый как,

$ Process2

Энтон
источник
ps -efпоказывает все процессы переднего плана для меня. На какой ОС вы работаете?
Багамат
2
Вы уверены, что process2 все еще работает, когда вы печатаете 'ps'? Может быть, это уже сделано.
Хуан Ф. Лей
К тому моменту, как вы получите приглашение, процесс на переднем плане завершен.
vonbrand

Ответы:

6

Вы можете быть смущены, потому что psпо умолчанию показывает вам процессы, которые находятся на том же терминале, где psвызывается, например, процессы, запущенные из того же окна терминала.

Попробуйте ps -u $LOGNAMEили если вы знаете имена терминалов ps -t $THETTYNAME1,$THETTYNAME2. (Имена терминалов обычно выглядят как «ttyN» или «pts / N»).

Dummy00001
источник
ps - efпоказывает все процессы, а не только те, что на «этом» терминале.
Багамат
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

Процесс отображается в ожидаемом порядке (и +показывает, что он находится в группе процессов переднего плана).


источник