Você pode separar vários comandos por ;
, então eles são executados sequencialmente, por exemplo:
really_long_script.sh ; echo Finished
Se você deseja executar o próximo programa somente se o script terminar com o código de retorno 0 (o que geralmente significa que foi executado corretamente), então:
really_long_script.sh && echo OK
Se você quiser o oposto (ou seja, continue somente se o comando atual tiver falhado), do que:
really_long_script.sh || echo FAILED
Você pode executar seu script em segundo plano (mas cuidado, a saída de scripts ( stdout
e stderr
) continuará indo para o terminal, a menos que você o redirecione para algum lugar) e wait
para ele:
really_long_script.sh &
dosomethingelse
wait; echo Finished
Se você já executou o script, poderá suspendê-lo com Ctrl-Z
e, em seguida, executar algo como:
fg ; echo Finished
Em que fg
coloca o processo suspenso em primeiro plano ( bg
o executaria em segundo plano, praticamente como iniciado com &
)