一个Jenkins构建的sed转义错误

时间:2017-11-15 08:57:15

标签: sed jenkins-pipeline

我正在尝试使用sed替换json文件中的一行。这是原作;

sed -i 's/"development": "s3://dev.server.com/pentlands/atg"/"development": "new-bucket-here"/g' file.txt

我试过这个;

sed -i 's/"development": "s3://dev\.server\.com/pentlands/atg"/"development": "new-bucket-here"/g' file.txt

这是错误;

WorkflowScript: 37: unexpected char: '\' @ line 37, column 47. -i 's/"development": "s3://dev\./server

1 个答案:

答案 0 :(得分:0)

更新json文件的最佳方法是使用像jq这样的json解析器。

但是,如果您想要执行简单的字符串更改,可以尝试:

sed -i 's,"development": "s3://dev\.server\.com/pentlands/atg","development": "new-bucket-here",g' file.txt

请注意,替换/,并在sed命令中用作分隔符。