在你的shell(在我的情況下是bash)中,你可以用$!獲得最後一個後臺進程的pid。變量:複合shell命令的PID
command &
echo $!
不過,我感興趣的是一個複合命令:
commandA | commandB &
echo $!
在這種情況下,$的價值!似乎是commandB的PID。我在找的是commandA的PID。有沒有簡單的方法來獲得它?
在你的shell(在我的情況下是bash)中,你可以用$!獲得最後一個後臺進程的pid。變量:複合shell命令的PID
command &
echo $!
不過,我感興趣的是一個複合命令:
commandA | commandB &
echo $!
在這種情況下,$的價值!似乎是commandB的PID。我在找的是commandA的PID。有沒有簡單的方法來獲得它?
,看一下這個問題: How to get the PID of a process that is piped to another process in Bash?
你會發現你需要那裏。
jobs -l
將列出每個管道成員的PID。
我以前從未見過這個命令。謝謝! – 2010-12-13 02:33:57
我確實在那裏找到了一些好點子,最終我想用一個「ps | grep | awk」解決方案來拉動鏈中第一個進程的pid。 – 2010-12-13 02:33:26