5

Например, как это сделать:

$ job1 &
$ p1=$LASTPID
$ job2 &
$ p2=$LASTPID
$ wait $p1 $p2

2 ответа2

10
job1 &
p1=$!
job2 &
p2=$!
wait
0

Если bash - ваша оболочка, и вы можете наткнуться на следующую ошибку, если попытаетесь поместить все операторы в одну строку:

$ job1 & p1=$!; job2 & p2=$!; wait
-bash: !: event not found

! персонаж вызывает замену истории Bash. Чтобы обойти это, вам нужно добавить пробел между $! и ; , как это:

$ job1 & p1=$! ; job2 & p2=$! ; wait
[1] 20198
[2] 20199
...

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .