Jenkins 使用 Groovy 读取 Jenkinsfile 中文件的特定行

vko*_*pio 3 groovy jenkins

我想读取的指定行html文件中詹金斯stageGroovy和它的内容保存到一个环境变量。问题是,File而且readLines()是不允许的。

我能够加载一个文件

env.WORKSPACE = pwd()
def file = readFile "${env.WORKSPACE}/file.html"
Run Code Online (Sandbox Code Playgroud)

在这个答案中提供

但是我怎样才能立即访问 line 的内容n呢?我在用Jenkins 2.32

Thi*_*ago 7

只是要在这里留下文档,但您也可以使用 readLines()。

def file = readFile location
def lines = file.readLines()
Run Code Online (Sandbox Code Playgroud)

从另一个问题


vko*_*pio 6

我从评论中尝试了 tim_yates 的建议,但System也被禁止了。最终对我有用的只是更改System.getProperty("line.separator")为 new line character "\n"

所以完整的答案在于它的简单性:

file.split("\n")[n]
Run Code Online (Sandbox Code Playgroud)

  • 你可能想在上面添加一个 `.trim()`,以防万一里面还有一个 Windows 的 `\r`。 (3认同)