jenkins - sh '' ' <command > '' ' - 三滴答 - 在 Jenkinsfile 中的用途是什么?

标签 jenkins sh

我有一个 Jenkinsfile,它在命令周围使用三个刻度线来执行,如下所示:

sh ''' command '''

我们不知道为什么需要三个刻度线或它们起什么作用。 在 Jenkinsfile 文档集中可以看到此语法。

最佳答案

这与 bash 完全无关(其中三引号根本没有特殊含义),而与 Groovy(解析 Jenkinsfiles 的单独的非 bash 解释器)有关。

在 Groovy 中,但在 bash 中不是,字符串必须使用三引号来跨越多行。

在 Jenkinsfile 中的 sh 指令的上下文中,三引号字符串的 content 作为脚本传递给 shell 以执行;但是,语法 由 Groovy 解析,因此只有 Groovy 关心引号本身(而不是引用的内容)。

关于jenkins - sh '' ' <command > '' ' - 三滴答 - 在 Jenkinsfile 中的用途是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57728279/

相关文章:

linux - scp:如何发现复制完成

bash - 在 Linux shell 脚本中,我如何打印数组的最大值和最小值?

github - Jenkins GitHub 连接错误 - 您的帐户已暂停

jenkins - 将构建参数从一个 Jenkins 项目传递到另一个 Jenkins 项目

perl - 为什么 '$_' 与 Perl 单行代码中的 $ARGV 相同?

linux - 验证 IP 是否存在于文件中

linux - sh 脚本转义

tomcat - 如何在 Jenkins 版本 2.46.3 中获取各种 SCM 选项

matrix - Jenkins 矩阵构建。升级后组合过滤器 groovy 脚本失败

jenkins - Jenkins将工作区存储在Docker容器外部