Claro que você pode fazer isso, basta adicionar um &&
ou ||
no final da linha, dependendo de que você deseja que a ação seja executada se o comando anterior for bem-sucedido ou falhar. Então, para o exemplo a seguir, eu uso as atualizações usuais, mas funciona com quase todos os comandos.
#!/bin/bash
# an example upgrade script, call with sudo ./scriptname.sh
apt-get update &&
apt-get -y dist-upgrade &&
apt-get -y autoremove &&
apt-get clean
Isso seria para um script que apenas encaminha a sucessão dos comandos antes. note que a última linha não tem &&
, isto é porque você lançaria um erro se estivesse lá, porque não há nenhum próximo comando para pular para.
Agora, um exemplo de falha, devemos? Tomando novamente o mesmo exemplo, mas eu quero que meu computador me diga o quão boba minha ação foi ( brincando ):
#!/bin/bash
# an example upgrade script, call with sudo ./scriptname.sh
apt-get update &&
(apt-get -y dist-upgrade &&) || echo "THIS was not working right"
apt-get -y autoremove &&
apt-get clean
Então, se o comando falhar, alguma coisa, para mais leitura no bash shell script você pode visitar os links que eu incluí aqui: