Script shell: o processo filho não termina no linux

4

Eu escrevi um script de shell para iniciar três processos em segundo plano ao mesmo tempo. No script de shell, estou tentando esperar que todas as crianças concluam seu trabalho e, em seguida, que o trabalho pai termine. Mas, com alguma razão, vejo que os processos de dormir nunca acordam.

echo "Starting $1 instances" >> $logfile
for i in 'seq 1 $1'
do
        /usr/bin/php index.php name&
done

echo "Waiting for all $l instances to complete \n" >> $logfile
wait
echo "All $instances scripts completed"  >>  $logfile
    
por user269867 20.02.2014 / 14:21

1 resposta

7

Se você estiver usando bash , use o comando wait , em vez de um loop de pesquisa elaborado. Eu não sei sobre outras shells (sh, zsh, e assim por diante), mas eu presumo que a maioria / todas elas também possuem wait , ou um equivalente a ela.

    
por 20.02.2014 / 15:32