Processos de automatização de tarefas mais complexas p...
Dentre as opções relacionadas abaixo, a que representa uma linha de script de bash que executará “comando02” somente se “comando01” apresentar erro é:
Gabarito comentado
Confira o gabarito comentado por um dos nossos professores
Alternativa Correta: B - comando01 || comando02
Explicação:
A questão aborda a gerência do processador no contexto de scripts bash, focando especificamente no uso de operadores lógicos para controle de fluxo. Compreender como esses operadores funcionam é essencial para automatizar tarefas de forma eficiente em ambientes Unix/Linux.
Quando lidamos com scripts bash, é comum precisar executar comandos de maneira condicional, dependendo do sucesso ou falha de comandos anteriores. Neste caso, precisamos entender os operadores lógicos que o bash oferece:
- ; - Executa dois comandos sequencialmente, independente do sucesso ou falha do primeiro comando.
- || - Executa o segundo comando somente se o primeiro comando falhar (retornar um código de saída diferente de zero).
- && - Executa o segundo comando somente se o primeiro comando tiver sucesso (retornar um código de saída zero).
- ; else - Esta estrutura não é válida em bash.
Para resolver a questão, a frase "executar 'comando02' somente se 'comando01' apresentar erro" indica que o segundo comando deve ser executado apenas se o primeiro falhar. Isso se encaixa perfeitamente com o operador ||, que é utilizado para executar um segundo comando apenas se o primeiro falhar.
Portanto, a linha de script correta é:
comando01 || comando02
Esta linha de comando garantirá que comando02 só seja executado se comando01 falhar.
Se tiver dúvidas ou precisar de mais exemplos, não hesite em perguntar!
Clique para visualizar este gabarito
Visualize o gabarito desta questão clicando no botão abaixo
Comentários
Veja os comentários dos nossos alunos
Correto, isso acontece nos ambientes Linux
comando01 && comando02 - só executa a segunda ação caso a primeira tenha executado com sucesso
comando01 || comando02 - só executa a segunda ação caso a primeira tenha executado com erro
&& = AND lógico
|| = OU lógico
Clique para visualizar este comentário
Visualize os comentários desta questão clicando no botão abaixo