การดูกระบวนการพื้นหน้าโดยใช้ ps


9

ฉันสามารถดูกระบวนการพื้นหลังโดยใช้ ps แต่มีวิธีดูกระบวนการพื้นหน้าหรือไม่? ตัวอย่างเช่น,

$ nohup กระบวนการ 1 &

แล้วก็

ps -ef | grep "process1"

จะแสดงกระบวนการ "process1" ในการดำเนินการ แต่คำสั่งดังกล่าวจะไม่แสดงกระบวนการทำงานเบื้องหน้าเช่น

$ process2


ps -efแสดงกระบวนการพื้นหน้าทั้งหมดสำหรับฉัน คุณใช้ระบบปฏิบัติการใดอยู่
บาฮามาต

2
คุณแน่ใจหรือไม่ว่าโปรเซส 2 ยังคงทำงานอยู่เมื่อคุณพิมพ์ 'ps' อาจจะทำไปแล้ว
Huang F. Lei

เมื่อถึงเวลาที่คุณได้รับพรอมต์กลับกระบวนการพื้นหน้าจะเสร็จสิ้น
vonbrand

คำตอบ:


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.