Этот вопрос уже имеет ответ здесь:
У меня есть сценарий как этот
genhash --use-ssl -s $IP -p 443 --url $URL | grep MD5 | grep -c $MD5
Я хочу генерировать поток genhash в переменной. Как я перенаправляю его в переменную $hash
выдерживать сравнение в условном выражении?
if [ $hash -ne 0 ]
then echo KO
exit 0
else echo -n OK
exit 0
fi
Используйте конструкцию $ (...)
:
hash=$(genhash --use-ssl -s $IP -p 443 --url $URL | grep MD5 | grep -c $MD5)
Думаю, совместимый способ:
hash=`genhash --use-ssl -s $IP -p 443 --url $URL | grep MD5 | grep -c $MD5`
, но я предпочитаю
hash="$(genhash --use-ssl -s $IP -p 443 --url $URL | grep MD5 | grep -c $MD5)"
Вы можете сделать:
hash=$(genhash --use-ssl -s $IP -p 443 --url $URL)
или
hash=`genhash --use-ssl -s $IP -p 443 --url $URL`
Если вы хотите получить результат весь конвейер, который будет назначен переменной, вы можете использовать весь конвейер в приведенных выше назначениях.