转义双引号 Jenkinsfile 的问题

Problem with escaping double quote Jenkinsfile

我开始使用 Jenkinsfile 构建 Jenkins 作业。在我的步骤之一中,我创建了一个变量。这个变量回显符合预期,现在我尝试将这个变量插入到一个新函数中并需要转义,一切看起来都很好,直到我在新行而不是末尾看到最后一个双引号。

创建我的变量的代码行是:

gitTag = sh(returnStdout: true, script: "git describe --tags--always")

使用该变量的行代码:

sh "echo WEBSERVICE_VERSION=\"$gitTag\" > ${WORKSPACE}/webservice/src/webservice_version.py"

预期输出 WEBSERVICE_VERSION="$gitTag",但我看到的输出是 WEBSERVICE_VERSION=$gitTag

我是不是转义出错了?

这应该适合你

node('master'){
def gitTag="mytag"
sh "touch webservice_version.py"
sh "echo \\"${gitTag}\\"  > webservice_version.py"
sh "cat webservice_version.py"
}