我想確定哪些進程已被父進程調用(或者可能獲得分層引起的「棧」或進程樹)。獲取子進程的列表,由父進程在Linux中調用
不幸的是,由於進程終止得太快,所以很難確定PID,GPID和PPID。可能是這樣的信息可以在系統日誌中找到?
我使用RHEL 6.4。
非常感謝。
我想確定哪些進程已被父進程調用(或者可能獲得分層引起的「棧」或進程樹)。獲取子進程的列表,由父進程在Linux中調用
不幸的是,由於進程終止得太快,所以很難確定PID,GPID和PPID。可能是這樣的信息可以在系統日誌中找到?
我使用RHEL 6.4。
非常感謝。
ps
命令的f
選項將有所幫助。嘗試:
ps afx
這將顯示所有進程,並將在控制檯中可視化父 - >子依賴關係。
感謝您的好建議,但我的父進程運行時間不到1秒,因此在此刻打開另一個終端並運行此命令來獲取樹實際上是不可能的。 –
嘗試使用'strace -f 2>&1',它會顯示由進程及其子進程進行的系統調用 - 遞歸。你可能會grep輸出'fork | exec。*' – hek2mgl
謝謝!這就是我所需要的。 –
你可以用strace(1)運行你的程序嗎?它可以輸出這些信息。 – Sven