我正在Jenkins作业中执行此Shell脚本。 仅当此脚本中的条件被评估为true时,才可以运行作业的下一步。 如果内部版本号中包含单词SNAPSHOT,则应评估为true,然后执行下一步。
#!/bin/sh
snapshot_present=true
v="${BUILD_NUMBER}"
case $v in
*SNAPSHOT*)
echo "snapshot ${v} being pushed to prod";;
*)
echo "no match found in ${v}"
esac
exit
但是,当我运行此作业时。我得到的输出是:
在77中找不到匹配项
77是这里的内部版本号。 并且作业将继续独立执行下一步。
我的状况得到正确评估吗?如果是这样,那为什么还要获得其他输出?它应该产生
快照$ {v}被推到产品中
任何帮助将不胜感激。 谢谢。
答案 0 :(得分:2)
no match found in 77
如打印输出所示,$v
设置为77
,并且不包含单词SNAPSHOT
。所以是的,触发*)
案例是正确的。