我有一个我正在做的项目。这是我第一次创建pid进程树。这棵树假设显示了祖父母,祖父母,父母,孩子,孙子,曾孙子
说明:
写一个以pid为主题的脚本
参数并打印以下内容
信息:
a)命令名称
b)任何网络连接,
c)重复(a)和(b)最多3个祖先
流程和最多3代
后代
这是我到目前为止的代码
ps -al | awk '{print $4,$5}'
parents[pid]=ppid
echo $parents
此代码的输出假设显示PID和PPID的列表,但它不起作用。我需要帮助。我也用linux编写这段代码。
这是我创建的新代码。
function treeOfLife(){
pid=$$
myParent=$PPID
myParent=$(ps -al | awk '{print $4,$5}')
GPPID=$(grep PPid: /proc/$$/status | awk '{print $2}')
echo $myParent $GPPID
}
treeOfLife $myParent $GPPID
当我运行代码时,这就是我得到的输出。 PID PPID 1304 1167 1506 1304 1507 1506 1508 1507 1509 1507 1304
答案 0 :(得分:0)
如果您使用的是Linux,您可能会更容易阅读/proc/[pid]/status
。 e.g。
# echo $$
167
# grep PPid /proc/$$/status
PPid: 158
另见