Boa tarde,
Estou olhando uns scripts e vi no começo um deles tem:
set -e
e depois disso tem umas variaveis sendo setadas e o restante do script, gostaria de saber para que serve esse (set -e) no começo.
Boa tarde,
Estou olhando uns scripts e vi no começo um deles tem:
set -e
e depois disso tem umas variaveis sendo setadas e o restante do script, gostaria de saber para que serve esse (set -e) no começo.
Olá Barbara! Tudo certo? Espero que sim. 🙂
Você poderia compartilhar o código ou o terminal no qual você visualizou essa informação? Dessa forma, posso entender melho o contexto do segmento de código set -e
.
Para copiar o código e disponibilizar aqui no fórum é bem fácil! É só seguir esses passos:
1) Selecionar o código mostrado no terminal e copiá-los. No Linux Ubuntu, o comando de teclado para copiar do terminal é Ctrl+Shift+C;
2) Depois é só vir aqui no fórum e selecionar no ícone correspondente a esse: </>
. Outra opção é digitar o comando de teclado Ctrl+Alt+C;
3) Cole o código dentro do campo que surgir.
Código de exemplo:
Resultado final:
sudo apt update
Uma outra alternativa seria tirar um print do terminal e dos códigos e postar aqui no fórum.
Seguem os passos para tal:
1) Fazer o print da tela do seu computador e salvar a imagem;
2) Voltar ao fórum e fazer o upload da imagem clicando no ícone definido como Upload de Imagem. Inserir o print e publicar.
Aguardo a sua resposta. Qualquer dúvida é só falar. 😉
Nossa Bruno você é muito didatico, obrigada mesmo... vou colocar aqui o codigo como marquee
#!/bin/bash
set -e
branch=@option.branch@
ambiente=@option.ambiente@
instancia=@option.instancia@
if [ ${branch} -eq "feature/*" ]
then
war_url=https://artifactory.empresa.com.br/artifactory/deploy-release/repo/${branch}/art.war
else
war_url=https://artifactory.empresa.com.br/artifactory/deploy-snapshot/repo/${branch}/art.war
fi
tmp_war_dir=/tmp/art${instancia}
tmp_war_file=${tmp_war_dir}/art.war
dir_instancia=/app/art/jetty-6.1.14-art${instancia}
app_context=art${instancia}
echo "Baixando war para area temporaria"
mkdir -p ${tmp_war_dir}
wget --no-verbose -O ${tmp_war_file} ${war_url}
echo "Executando Deploy do .war"
cd ${dir_instancia} && ./deploy.sh ${tmp_war_file} ${app_context}
echo "Limpando war da area temporaria"
rm -f ${tmp_war_file}
Olá Barbara.
Obrigado pelo feedback positivo! 😊
Nesse caso, o set
seria um comando de mudança de valores/configurações de variáveis internas do script em que está sendo usada. A tag -e
seria uma abreviação de errexit, e tem o objetivo de abortar o script caso algum comando possua um erro, isto é, que retorne um valor non-zero.
De forma sucinta, o comando set -e
acaba por reconfigurar o script para uma parada forçada assim que detectar algum erro em um de seus comandos. Assim, se trata de um comando de segurança, que preza pela eficiência e um bom funcionamento do script.
Caso você se interesse em saber mais sobre a elaboração de scripts no shell, aqui na Alura nós temos dois cursos bem interessantes sobre a temática e que podem lhe ajudar nos seus estudos.
Espero ter ajudado! Quaisquer dúvidas, estou à disposição. 😉