Normalmente, uso apenas a substituição de comandos , e a coloco em teste , por exemplo
if [ ! -z "$(command1 | command 2 | awk '$1 > 800')" ]; then command3; fi
Explicação
- Isso executa o comando conforme sua pergunta:
command1 | command 2 | awk '$1 > 800'
- A saída disso é passada para o teste
[ ! -z "$(…)" ]
, o que será verdadeiro se não for!
uma string de comprimento zero-z
.
Portanto, se houver saída para o canal de comando, os comandos then
serão executados.