Jenkinsfile里怎么查看mvn命令之后,打印的日志查看有多少building jar字段?并把每行包含building jar的内容找出来,并把找出来的第二行打印出来
答案: 在Jenkinsfile中,可以使用sh
命令执行mvn命令,并通过grep
命令过滤出包含"building jar"的日志行。然后,可以使用readFile
函数读取日志文件,并使用正则表达式匹配出第二行包含"building jar"的内容。
以下是一个示例的Jenkinsfile代码:
pipeline {
agent any
stages {
stage('Build') {
steps {
sh 'mvn clean install | tee build.log'
script {
def logContent = readFile('build.log')
def lines = logContent.readLines()
def buildingJarLines = lines.grep(/building jar/)
if (buildingJarLines.size() >= 2) {
def secondLine = buildingJarLines[1]
echo "Second line with 'building jar': ${secondLine}"
} else {
echo "No second line with 'building jar' found"
}
}
}
}
}
}
在上述示例中,sh
命令执行mvn clean install
并将输出保存到build.log
文件中。然后,使用readFile
函数读取日志文件内容,并使用grep
命令过滤出包含"building jar"的日志行。如果找到至少两行包含"building jar"的日志行,则打印第二行的内容。如果找不到第二行包含"building jar"的日志行,则打印相应的提示信息。