Pausando no GNU paralelo e esperando pelo caractere

2

Eu gostaria que a pausa na temporização fosse substituída pelo equivalente a um getchar () em uma execução paralela da GNU:

parallel -j2 --halt 2 ::: 'sleep 5m; return 1' './runMe'

No entanto, o seguinte não funciona (conclui a execução do primeiro trabalho imediatamente):

parallel -j2 --halt 2 ::: 'read -n1 kbd; return 1' '/runMe'

Existe outra maneira além de apenas esperar? NB: ./runMe contém um loop infinito.

    
por baptiste 04.09.2017 / 13:34

1 resposta

0

O GNU Parallel pode ser executado interativamente usando -p .

parallel -p echo ::: 1 2 3

Você terá que responder y a cada vez, mas talvez seja bom o suficiente.

Esteja ciente também de que qualquer saída será atrasada. Ao executar 3 trabalhos em paralelo, a saída do trabalho 1 será impressa após o início do trabalho 3.

    
por 11.09.2017 / 12:50