无法在Jenkins管道中运行Shell脚本
我能够运行以下shell脚本,但无法从Jenkins管道代码运行。
node('buildnode') {def value = "Myvalue"
def key = "Mykey"
sh '''
DATA=$(printf "%-50s \"$key\"" "$value")
echo "$DATA"
'''
}
++ printf '%-50s ' ''+ DATA='
尝试过sh“”“
DATA=$(printf "%-50s \"$key\"" "$value")echo "$DATA"
" " "
:
美元符号后的非法字符串体字符;解决方案:要么转义文字美元符号,
"\$5"
要么将值表达式括起来"${5}"
有人能帮我吗?
回答:
这应该工作。
node('buildnode') { def value = "Myvalue"
def key = "Mykey"
sh """
DATA=\$(printf "%-50s \"${key}\" \"${value}\"")
echo "\$DATA"
"""
}
您还需要在调用下面的新subshell时转义$ """ """
DATA=$(printf "%-50s \"${key}\" \"${value}\"")
以上是 无法在Jenkins管道中运行Shell脚本 的全部内容, 来源链接: utcz.com/qa/408141.html