หากคุณเริ่มกระบวนการบางอย่างในเทอร์มินัล (เช่น gedit) กว่า Process ID (PID) (ของ bash) และ Parent Process ID (PPID) (ของ gedit) สำหรับสองกระบวนการนี้จะเหมือนกัน สิ่งนี้สามารถเห็นได้ในผลลัพธ์ของ
ps -ef
คำสั่ง เพื่อให้อ่านง่ายขึ้นช่วยให้ครั้งแรก "ท่อ" ออกไปgrep
เพื่อหาสิ่งที่ PID ของทุกคน "ทุบตี" กระบวนการที่กำลังทำงานอยู่และกว่า "ท่อ" awk
อีกครั้งเพื่อ awk
เลือกเพียง PID และสาขาชื่อกระบวนการ (เขต 2 และ 8) และผลมันไปที่หน้าจอ
ps -ef | grep bash | awk '{print $2 ": " $8}'
จำนวนในเอาต์พุตคือ PID คุณจะใช้มันเพื่อค้นหาว่ากระบวนการเริ่มต้นในเทอร์มินัลที่มี PID นั้น โปรดทราบว่าสามารถมีเอาต์พุตได้มากกว่าหนึ่งบรรทัดหากคุณเปิดมากกว่าหนึ่งเทอร์มินัล ตอนนี้เพื่อค้นหากระบวนการ "ลูก" (ถ้ามี) ของเทอร์มินัลเซสชันนั้นเราสามารถใช้คำสั่งนี้:
ps -ef | awk '{if ($3 == EnterPID) print $2 ": " $8;}'
คุณต้องป้อนหมายเลข PID แทน EnterPID ในคำสั่งสุดท้าย หากมีมากกว่าหนึ่ง PID สำหรับ "bash" คุณต้องลองทั้งหมด
คำสั่งสุดท้ายเพียงแค่ดูผลลัพธ์ของps -ef
และค้นหาว่า PID (ที่คุณได้พบจากคำสั่งก่อนหน้า) และ PPID จะเหมือนกันสำหรับกระบวนการใด ๆ
ข้อมูลเพิ่มเติม:
ผู้ชาย ps
ผู้ชายตกใจ
screen
,tmux
,script
,ssh
,mc
และหันแผงปิดหรือเพียงแค่เปลือกอื่นโดยการเช่นการพิมพ์bash
หรือสิ่งที่ตามเส้นเหล่านี้ กด Ctrl + D หรือพิมพ์exit
เพื่อออกจากเชลล์ของคุณคุณจะเห็นว่าคุณอยู่ที่ไหน