Bash脚本结束而不做回声

我正在从命令行运行脚本,如果设置了4个变量,该脚本将运行一堆Jmeter测试。

该脚本有效,但是我添加了一些部分,因此如果服务器未知,该脚本将结束。

if [ echo "$2" != | grep -iq "^hibagon" ] || [ echo "$2" != | grep -iq "^kameosa" ] ;then

echo "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

回到顶部