如何使用pstree从树中的一个点找到进程​​列表?

时间:2013-05-24 20:28:57

标签: pstree

我有一些pid,我想知道每个父母一直到init的进程名称。

例如,当我输入我正在寻找的这个命令时,我希望看到类似的东西 “init───sshd───bash───mypidprocess”

默认情况下,pstree打印出相反的内容,从给定pid的processname开始,它一直向下移动到最后一个孩子。

我如何告诉pstree以递归方式打印出pid的父母?

1 个答案:

答案 0 :(得分:4)

使用GNU pstree,您可以使用-H突出显示选项突出显示某个进程及其所有祖先,然后只过滤突出显示。

但是使用Fred Hucht's portable version of pstree,这可能是你在任何平台上所拥有的东西,而不是linux,实际上没有任何东西可以帮助你。当然你可以解析整个树,但是直接解析ps输出(这是pstree本身所做的)会更容易。或修改(GPL)源以执行您想要的操作。

编写一个递归调用getppid的简单程序(在Python,C中,无论如何)可能更容易,然后获取有关生成父项的进程信息。