我有一个这样的脚本
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
发布于 2010-04-01 16:35:37
使用$( ... )
结构:
hash=$(genhash --use-ssl -s $IP -p 443 --url $URL | grep MD5 | grep -c $MD5)
发布于 2010-04-01 16:37:11
我猜是兼容的方式:
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)"
发布于 2014-12-09 02:02:55
如果管道太复杂而无法包装在$(...)
中,可以考虑编写一个函数。定义时可用的任何局部变量都将是可访问的。
function getHash {
genhash --use-ssl -s $IP -p 443 --url $URL | grep MD5 | grep -c $MD5
}
hash=$(getHash)
http://www.gnu.org/software/bash/manual/bashref.html#Shell-Functions
https://stackoverflow.com/questions/2559076
复制相似问题