如何在Groovy IF语句中将表达式与字符串进行比较

时间:2020-07-24 03:53:56

标签: groovy jenkins-pipeline jenkins-groovy groovyshell

我的常规脚本中具有以下IF条件:

if (git log -1 --pretty=format:'%an' == 'xyz')

我要实现的所有目的是,我需要拥有的价值

git log -1 --pretty=format:'%an'

等于一些字符串,在这里说xyz 我可以在下面的shell中轻松做到这一点

if [ `git log -1 --pretty=format:'%an'` == "xyz" ]

但是无法在我的常规IF中使用它

1 个答案:

答案 0 :(得分:1)

如果在Jenkinsfile中使用它

def log = sh(returnStdout: true, script: "git log -1 --pretty=format:'%an'").trim()
if (log == 'xyz') {
  ...
}

如果在纯Groovy中使用它(以下解决方案在Jenkinfile中也可以使用)

def log = "git log -1 --pretty=format:'%an'".execute().text
if (log == 'xyz') {
  ...
}

相关问题