O comando Echo não está sendo exibido

0

Eu tenho um script de shell com o seguinte:

STATUS='/home/scripts/200check.sh $RUOK_URL'

Dentro do 200check.sh eu tenho alguns comandos echo , mas esses comandos não são exibidos no terminal. Eu acho que eles estão consumidos por outra coisa?

Alguém sabe como posso ter os comandos echo exibidos?

    
por C0deAttack 14.09.2011 / 17:41

2 respostas

3

echo envia mensagens para o stdout e elas são capturadas pelo mesmo operador ' ' .

É prática padrão enviar avisos ou mensagens de erro para o stderr. No bash, você usaria:

echo "warning: blah" >&2

O stderr normalmente não é afetado por pipes ou operadores de substituição de comandos (embora ainda possa ser redirecionado).

    
por 14.09.2011 / 18:15
3

A saída do script é salva na variável $STATUS , porque você a chama usando back-ticks (uma maneira mais agradável de fazer isso seria usar $(...) , que é mais fácil). Tente exibir o valor de $STATUS para ver se sua saída esperada está lá.

    
por 14.09.2011 / 18:16