我相信我要问的是,不可能。仍然试图找出我不知道的方法或方法。
我遇到了一个管道损坏的错误,我有目的地进程的pid而不是名字。有什么办法,我可以使用pid找出进程名称(可能已经终止)。
答案 0 :(得分:1)
巴马尔在评论中说,这是不可能的。一旦系统终止,系统就会忘记有关进程的所有信息。
但当然,您的流程可能符合规定,以帮助您了解更多信息。如果您可以修改有问题的流程,您可以让他们将他们的PID记录到一个特殊的地方,在那里您可以查看哪个PID属于哪个流程。
但是,这对于无法修改的程序不起作用。在这些情况下,仍然可以在它们周围放置一个包装器,首先记录PID,然后exec
s到所需的程序。
#!/bin/bash
echo "$$: $*" >> /home/alfe/var/pid.log
exec "$@"
如果你既没有启动有问题的程序,也没有修改它,你就不用担心了。