例如,如何做到这一点:
$ job1 &
$ p1=$LASTPID
$ job2 &
$ p2=$LASTPID
$ wait $p1 $p2
答案1
job1 &
p1=$!
job2 &
p2=$!
wait
答案2
如果bash
是您的 shell,并且您尝试将所有语句放在一行中,您可能会遇到以下错误:
$ job1 & p1=$!; job2 & p2=$!; wait
-bash: !: event not found
该!
角色调用bash 的历史替换。为了解决这个问题,您需要在$!
和之间添加一个空格;
,如下所示:
$ job1 & p1=$! ; job2 & p2=$! ; wait
[1] 20198
[2] 20199
...