如何在多行 shell 中读取 Jenkins 管道变量?

How can I read Jenkins pipeline variable in multiline shell?

我正在尝试创建一个 Jenkins 管道,我需要在其中执行多行 shell 命令。

stage ('Test'){
name="myserver"
sh '''
    "ssh -o StrictHostKeyChecking=no ${myserver} 'rm -rf temp && mkdir -p temp && mkdir -p real'"
'''

}

但它总是返回错误 "command not found"。如果我运行和

一样
sh "ssh -o StrictHostKeyChecking=no ${myserver} 'rm -rf temp && mkdir -p temp && mkdir -p real' "

是否有不同的方式访问多行变量shell?

您需要像这样使用“””:

sh """
    "ssh -o StrictHostKeyChecking=no ${myserver} 'rm -rf temp && mkdir -p temp && mkdir -p real'"
"""