Estou escrevendo um script, mas há algo de que preciso que não consigo encontrar uma maneira de fazê-lo ...
Preciso fazer um comando em segundo plano "command1 &" e, em algum lugar do script, preciso esperar que ele termine antes de executar o command2. Basicamente, eu preciso disso:
NOTA: cada comando é executado em um diretório específico! no final do loop while, meu command1 criou 4 diretórios, nos quais cada um executa o processo específico, de modo que o total de processos em execução é 4
a=1
while [$a -lt 4 ]
. command1
#Generates 1 Process
a= `export $a +1`
done
#Wait until the 4 process end and then run the command2
. command2
Eu vi algo sobre um wait
comando com o número do processo pid, mas isso não funcionou também.
$!
variável para obter isso, passando-a para o wait
comando como mostrei lá. $!
contém o último PID em segundo plano, enquanto $$
contém o último PID da execução do processo.
command1
? Você pode modificá-lo para que ele retorne os PIDs dos 4 processos?