
brunomnunes
(usa Outra)
Enviado em 12/03/2019 - 10:48h
Bom dia Pessoal.
Tenho uma dúvida a respeito do uso do case, a minha necessidade é :
Realizar um curl em uma URL específica de acordo o case informado, e posteriormente eu iria realizar um grep de uma string na saida desse curl.
Mas a questão é que um robô irá executar esse script e preciso automatizar a execução (colocar o JOB que preciso fazer o curl e qual o possível erro que preciso fazer o grep na saida do curl) , pois há diversos "CURL's e GREP's " que são diferentes e quero tratar no mesmo script.
Até o momento o script esta assim :
#!/bin/bash
case $1 in
"AuraKPIs-ProdDaily" )
i=`echo ${1}`
echo "Executando o curl no JOB ${i}"
curl -s -S -u ${AUTHENTIC} ${URL}${i}/lastBuild/consoleText > ${DIR}$i.log
;;
"Aura-Retention-Monthly" )
i=`echo ${1}`
echo "Executando o curl no JOB ${i}"
curl -s -S -u ${AUTHENTIC} ${URL}${i}/lastBuild/consoleText > ${DIR}$i.log
;;
"TI_AuraKPIs-Manually" )
i=`echo ${1}`
echo "Executando o curl no JOB ${i}"
curl -s -S -u ${AUTHENTIC} ${URL}${i}/lastBuild/consoleText > ${DIR}$i.log
;;
*)
echo "Insira uma opção para executar o script"
;;
esac
ERROR () {
erros=('out_of_memory' 'no connection')
for j in ${erros[@]}
do
echo "Executando o grep no arquivo $i.log para os seguintes erros $j"
erros=`grep ${j} $DIR/$i.log`
if [ "$erros" == "" ]; then
echo "Sem erros"
else
echo "$erros"
fi
sleep 2
done
}
OBS : Como não consegui colocar o grep como parâmetro do case, criei uma função a qual tem os possíveis erros que preciso procurar nas saídas do curl.
Se alguém puder me ajudar eu agradeço !!!!