Como posso suspender uma seqüência inteira de comandos em um shell?

5

Como posso suspender uma sequência inteira de comandos no bash ou zsh (ou talvez em algum outro shell)?

Por exemplo, se eu correr:

sleep 100; echo foo

e pressione Ctrl + Z , sleep é suspenso e colocado em segundo plano, mas echo é executado imediatamente.

Gostaria que isso não acontecesse, ou seja, echo deveria ser executado depois que sleep fosse retomado e concluído.

    
por parfluid 25.07.2012 / 13:59

1 resposta

6

Execute-os a partir do subshell:

( sleep 100 ; echo foo ; )

E ctrl + z congelará todo o subnível, não apenas um comando:

^Z
[1]+  Stopped                 ( sleep 100; echo foo ; )
    
por 25.07.2012 / 14:04

Tags