如何在 Jenkins 管道中使用"sed"命令



我必须删除管道日志中两个单词之间的空格。这是管道代码

echo "MyUserName: ${cause.userName}"

之后,日志文件中的输出为

MyUserName: [James Perera]

日志文件中的预期输出

MyUserName: [JamesPerera]

这就是我尝试的

echo "MyUserName: ${cause.userName}"
sh """   ${cause.userName} sed 's/ //g' """

然后在日志中输出

MyUserName: [James Perera]
[Pipeline] sh
+ sed 's/ //g' '[James' 'Perera]'
sed: can't read [James: No such file or directory
sed: can't read Perera]: No such file or directory

有人能帮我弄清楚吗?提前感谢!

注意:我想删除两个单词之间的空格的原因是我必须将该值作为一个单词传递给服务器。否则它将在服务器("[James"(中打印1个字

在bash中,您可以通过以下方式实现:

echo "MyUserName: ${cause.userName// /}"

变量子字符串替换语法:

${variablename//pattern/replacement}

在我们的例子中,模式是我们想要删除的空间字符。替换为空以删除任何匹配项。

相关内容

  • 没有找到相关文章

最新更新