我现在需要帮助,因为我一直在苦苦挣扎一个简单的sed命令,需要在Jenkinsfile中调用,需要进行一些变量插值。
最好展示命令而不是大段解释:
sh "sed -i -e 's/-RELEASE/-${unixEpoch}/g' myFile"
sed
不支持这种语法,并打印出命令 s/
没有完成。
我已经阅读了 Groovy 文档中与 String 和 GString 相关的部分,但我仍然不明白我哪里做错了?
有任何线索吗?
编辑:
我通过调用 date +%s
来获取当前时间戳以获得 unixEpoch
。
我打印出这个命令只是为了确保执行的内容,我发现:
sed -i -e 's/-RELEASE/-1525341883'
/g' myFile
< p >由< code >sed< /code >发送的完整错误信息为:< /p >
< p >< code >sed:-e表达式#1,第22个字符:未终止的's'命令< /code >< /p >
< p >我发现奇怪的是打印出的命令在中间有一个< code >\n< /code >...< /p >
unixEpoch
值为123456
的问题。您能否分享一下您执行它的更多细节? - mkobitdate
命令在字符串末尾添加了一个新行,导致sed
崩溃... - MadJlzz