作业脚本中的以下命令:
STATUS_ID=$(grep -Eo "Status Code [0-9]+: Done" somefile | grep -Eo "[0-9]+")
似乎导致以下ci lint错误:
脚本配置应该是字符串或字符串数组
该命令在我的bash上工作正常,但是当通过包含该行的文件尝试grep
状态代码时:
状态代码8484:完成
gitlab导致错误的原因是什么?
答案 0 :(得分:1)
冒号(:
)将该行作为yaml
地图进行处理。
解决方案(为了逃避冒号的特殊含义)是将整行用单引号括起来:
'STATUS_ID=$(grep -Eo "Status Code [0-9]+: Done" somefile | grep -Eo "[0-9]+")'