2016-07-07 64 views
1

我从另一个bash脚本(父母)中开始几个并行bash脚本(兄弟姐妹)。如何最好地在这些脚本中获取其他兄弟的PID?Bash - 获取兄弟姐妹的PID

父进程,我可以

ps -p $$ -o ppid --no-heading 

得到,但我无法弄清楚如何得到它的子进程。

回答

2

尝试ps --ppid <parent-process-id>(或)pgrep -P <parent-process-id>

manps

--ppid pidlist由父进程ID选择的。这将在pidlist中选择具有 父进程标识的进程。也就是说,它选择pidlist中列出的子进程 。

对于pgrep

-P PPID,... 只有匹配过程的父进程ID被列出。

+1

完整性''pgrep -P'ps -p $$ -o ppid -no-heading''或''ps -ppid'ps -p $$ -o ppid --no-heading '-o“pid”--noheading''获得兄弟 –

+1

或更好''pgrep -P $(ps -p $$ -o ppid -no-heading)'或'ps --ppid $(ps -p $$ -o ppid - 无标题)-o“pid”--noheading'来获取兄弟姐妹 –