ps를 사용하여 포 그라운드 프로세스보기


9

ps를 사용하여 백그라운드 프로세스를 볼 수 있습니다. 그러나 포 그라운드 프로세스를 볼 수있는 방법이 있습니까? 예를 들어

$ nohup 프로세스 1 &

그때

ps -ef | grep "process1"

"process1"프로세스가 실행 중임을 표시합니다. 그러나 위의 명령은 다음과 같이 실행되는 포 그라운드 프로세스를 보여주지 않습니다.

$ process2


ps -ef나를위한 모든 전경 프로세스를 보여줍니다. 어떤 OS를 실행하고 있습니까?
bahamat

2
'ps'를 입력 할 때 process2가 계속 실행되고 있습니까? 이미 끝났을 수도 있습니다.
Huang F. Lei

프롬프트가 표시 될 때 포 그라운드 프로세스가 완료됩니다.
vonbrand

답변:


6

ps기본적으로 ps호출 된 동일한 터미널에있는 프로세스 (예 : 동일한 터미널 창에서 시작된 프로세스)를 표시 하기 때문에 혼동 될 수 있습니다 .

ps -u $LOGNAME터미널 이름을 알고 있거나 시도해보십시오 ps -t $THETTYNAME1,$THETTYNAME2. 터미널 이름은 일반적으로 "ttyN"또는 "pts / N"과 같습니다.


ps - ef"this"터미널에있는 프로세스뿐만 아니라 모든 프로세스를 표시합니다.
bahamat

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.