我需要一些帮助。我是Jenkins和Groovy的菜鸟。
如何从包含特定单词的日志中获取特定字符串并打印?
def log = Jenkins.getInstance().getItemByFullName
('deploy/my_deploy').getBuildByNumber(checkjob.getNumber()).log
if (log.contains("Word")) {println log}
答案 0 :(得分:0)
不确定Jenkins发回的“日志”类型,但是例如您可以尝试使用findAll方法,如下所示:
def log = [ "First line", "Second line", "End of log"]
println log.findAll { line -> line.contains("line") }
>>> [First line, Second line]
遍历字符串列表(日志),并在条件(line.containts(“ line”))为true的情况下接受其中的每一行