linux上通过父进程的pid找到所有的子进程的pid以及进程名称,包括僵尸的进程
时间: 2024-03-01 19:55:22 浏览: 222
Linux中怎么通过PID号找到对应的进程名及所在目录方法
在Linux上,可以使用`pstree`命令来列出所有进程的树形结构,并可以通过grep命令来筛选出特定父进程的所有子进程信息。具体命令如下:
```
pstree -p <parent_pid> | grep -o '([0-9]\+)' | grep -o '[0-9]\+'
```
其中`<parent_pid>`为父进程的pid,`pstree`命令可以列出所有进程的树形结构,`grep -o '([0-9]\+)'`命令可以提取出所有进程的pid,`grep -o '[0-9]\+'`命令可以提取出所有进程的真实pid。
执行该命令后,将会输出所有特定父进程的子进程pid信息,包括僵尸进程。
如果你想在程序中获取所有特定父进程的子进程信息,可以使用系统调用`getppid()`来获取当前进程的父进程pid,然后使用`pstree`命令来获取所有子进程信息,并通过解析输出结果来获取所有子进程的pid以及进程名称。具体实现可以通过在程序中使用`popen()`函数调用`pstree`命令,并使用`fgets()`函数来逐行读取输出结果,并使用字符串函数来解析输出结果。
阅读全文