$ bg
[1]+ ./myscript.sh > output-07-JUL-16.txt 2>&1 &
$ jobs
[1]+ Stopped ./myscript.sh > output-07-JUL-16.txt 2>&1
Se você executar jobs -l
, poderá ver algo como o seguinte, o que deixa claro porque o trabalho parou:
[1]+ 4274 Stopped (tty input) ./myscript.sh > output-07-JUL-16.txt 2>&1
Algo em seu script está tentando ler no terminal. Quando um trabalho em segundo plano tenta ler de seu terminal de controle, ele recebe um sinal SIGTTIN
e pára. (Somente o trabalho em primeiro plano pode ler a partir do terminal de controle.)
A causa: no seu script, você tem
sudo ssh -q $i /tmp/access.sh
ssh por padrão tentará ler a partir de seu stdin. Você pode dar ao ssh a opção -n
para dizer para não ler o stdin.
sudo ssh -n -q $i /tmp/access.sh