我在shell脚本中使用以下条件
if [! -z "$failedTC"] || [-n "$failedTC"];
then
echo "ITS not empaty AND NOT NULL"
else
echo "ITS empty or NULL"
fi
我正在检查$ failedTC的上述代码不应为null和空。但是如果条件在詹金斯中抛出以下错误消息。我在jenkins的Execute Shell窗口中使用了以上脚本。
/tmp/jenkins371454092166709762.sh:第23行:[!:找不到命令 /tmp/jenkins371454092166709762.sh:第23行:[-n:找不到命令
任何线索。...
答案 0 :(得分:4)
您需要在条件中的左括号和右括号之前添加一个空格:
更改
if [! -z "$failedTC"] || [-n "$failedTC"];
到
if [ ! -z "$failedTC" ] || [ -n "$failedTC" ];
答案 1 :(得分:2)
错误是,它需要在每个方括号space
前后放置一个[]
。
尝试一下:
if [ ! -z "$failedTC" ] || [ -n "$failedTC" ];
then
echo "ITS not empaty AND NOT NULL"
else
echo "ITS empty or NULL"
fi
答案 2 :(得分:2)
“ [”和“]”是命令,应该用空格“ [”包裹。这是最佳做法。试试这个
.[1:][].run.command