Bash脚本结束而不做回声
我正在从命令行运行脚本,如果设置了4个变量,该脚本将运行一堆Jmeter测试。
该脚本有效,但是我添加了一些部分,因此如果服务器未知,该脚本将结束。
if [ echo "$2" != | grep -iq "^hibagon" ] || [ echo "$2" != | grep -iq "^kameosa" ] ;thenecho "Unkown server stopping tests"
else
echo "Continueing to tests"
脚本的此部分运行时,如果未找到hibagon或kameosa(不区分大小写),它将结束脚本。
我希望命令行回显未知服务器停止测试然后结束,但此刻它只是结束而没有回显
回答:
那是一个奇怪的语法。试试这个:
if echo "$2" | grep -iq "^hibagon\|^kameosa";then
echo "Continuing to tests"
else
echo "Unkown server, stopping tests"
fi
或者,如果您正在使用bash:
if [[ "$2" =~ ^hibagon ]] || [[ "$2" =~ ^kameosa ]]then
echo "Continuing to tests"
else
echo "Unkown server, stopping tests"
fi
以上是 Bash脚本结束而不做回声 的全部内容, 来源链接: utcz.com/qa/404277.html