将变量从 shell 脚本传递到 groovy

时间:2021-06-16 23:39:01

标签: jenkins-groovy

我需要读取一个包含 groovy 内容的文件 文件 字符串 1 字符串2 字符串 3 预期输出为 string1,string2,string3 我不能使用文件 io 命令,因为出于安全原因我不能使用 java.io 我试过 sed -z 's/\n/,/g;s/,$/\n/ file',我需要把这个 shell 命令的输出返回给 groovy。 我试过下面的命令 def contentList = sh(returnStdout: true, script:"sed -z 's/\n/,/g;s/,$/\n/'文件") 但它给出了错误 sed: -e 表达式 #1, char 2: 未终止的 `s' 命令 该命令在没有转义字符的 unix 中工作正常。 请帮忙

1 个答案:

答案 0 :(得分:0)

def contentList = sh(returnStdout: true, script:"sed -z 's/\n/,/g;s/,$/\n/'文件")

只需要向 \n 添加额外的转义字符