Eu confirmo que esse comportamento estranho ocorre também no Ubuntu 17.10 bash 4.4.12 (1) -release (x86_64-pc-linux-gnu).
Não consegui descobrir o motivo real, mas parece que tem algo a ver com sinais de processo. Por padrão, kill
envia o sinal 15 – TERM
, que significa um soft kill. No entanto, se eu usar um disco rígido 9 – KILL
, o processo de suspensão será imediatamente eliminado.
#!/bin/bash
set -eux
sudo sleep 120 &
spid=$!
sleep 1
sudo kill -9 $spid
wait $!
imprime
$ ./test.sh
+ spid=4342
+ sleep 1
+ sudo sleep 120
+ sudo kill -9 4342
./test.sh: line 6: 4342 Killed sudo sleep 120
+ wait 4342