O método mais fácil de obter o pid do último processo?

5

Por exemplo, como fazer isso:

$ job1 &
$ p1=$LASTPID
$ job2 &
$ p2=$LASTPID
$ wait $p1 $p2
    
por Xiè Jìléi 25.02.2011 / 02:15

2 respostas

10
job1 &
p1=$!
job2 &
p2=$!
wait
    
por 25.02.2011 / 02:17
0

Se bash for seu shell e você pode se deparar com o seguinte erro, se você tentar colocar todas as instruções em uma linha:

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

O caractere ! invoca a substituição do histórico do bash . Para contornar isso, você precisa adicionar um espaço entre o $! e o ; , assim:

$ job1 & p1=$! ; job2 & p2=$! ; wait
[1] 20198
[2] 20199
...
    
por 28.03.2013 / 11:24

Tags