0
我相信我將要問的是不可能的。仍然試圖找出是否有一種方法或方法,我不會意識到。來自pid的Unix進程名稱
我得到了一個壞的管道錯誤,我有目標進程的PID但沒有名稱。有什麼辦法,我可以使用pid找出進程名稱(可能已經終止)。
我相信我將要問的是不可能的。仍然試圖找出是否有一種方法或方法,我不會意識到。來自pid的Unix進程名稱
我得到了一個壞的管道錯誤,我有目標進程的PID但沒有名稱。有什麼辦法,我可以使用pid找出進程名稱(可能已經終止)。
正如Barmar在他的評論中所說的,這是不可能的。系統在終止時會立即忘記所有有關進程的信息。
但是,當然您的流程可能能夠符合以幫助您瞭解更多信息。如果您可以修改相關流程,則可以讓他們將PID記錄到一個特殊位置,以便以後查找哪個PID屬於哪個進程。
雖然這不適用於您無法修改的程序。在這些情況下,仍然有可能在它們周圍放置一個包裝,它首先記錄PID,然後將其記錄到想要的程序中。
#!/bin/bash
echo "$$: $*" >> /home/alfe/var/pid.log
exec "[email protected]"
如果你既沒有啓動程序,也沒有可以修改的程序,你就沒有我擔心的選項。
您可以找到仍然存在的進程的名稱。但是如果它已經終止,並且它的父節點調用了'wait()'來獲取它,它就不再存在,並且你不能找到它的名字。 – Barmar