Como dedico um comando composto executado em paralelo?

6

Como faço o tempo de um comando composto quando a maioria, mas não todos os comandos executados em paralelo:

Por exemplo, o comando:

comd1 ; comd2 & comd3 & comd4 & comd5 &

Eu tentei

time (comd1…)

Mas, na saída, posso especular que apenas comd1 foi cronometrado porque comd2 to comd5 geralmente não são tão rápidos para concluir a execução quando são executados sozinhos.

    
por humanitiesclinic 26.10.2017 / 14:29

1 resposta

5

Você pode adicionar um wait para esperar por todos os processos em segundo plano.

Exemplos:

$ time (sleep 1; sleep 2 & sleep 4 & wait)
real    0m5.007s
user    0m0.004s
sys     0m0.005s

$ time (sleep 1; sleep 6 & sleep 4 & wait)
real    0m7.011s
user    0m0.005s
sys     0m0.003s
    
por 26.10.2017 / 14:37