英文:
how to write echo output into a text file in jenkins scripted pipeline
问题
我正在尝试在命令本身内将回显输出写入文本文件。我正在在 Jenkins 内置控制器上运行此脚本,该控制器是 Windows 机器。以下是我的代码:
pipeline {
agent any
stages {
stage('Hello') {
steps {
echo 'Hello World'
}
}
}
}
在这个代码中,我试图从同一个命令中将回显输出写入文本文件。
例如,echo 'Hello World' > Helloworld.txt
这是可能的吗?
英文:
Im trying to write echo output to a text file within the command itself. Im running this script on jenkins built-in controller itself which is windows machine. Here is my code,
pipeline {
agent any
stages {
stage('Hello') {
steps {
echo 'Hello World'
}
}
}
}
In this code, Im trying to write the echo output to a text file from the same command.
For example, echo 'Hello World' >Helloworld.txt
Is this possible?
答案1
得分: 1
你可以使用 bat
命令(在 Linux 中为 sh
,在 Windows 中为 bat
)。
pipeline {
agent any
stages {
stage('Hello') {
steps {
// 使用 'bat' 步骤运行 'echo' 命令,并将输出重定向到文件
bat 'echo Hello World > Helloworld.txt'
}
}
}
}
但更好的方式是使用 writeFile
链接。
英文:
you can use bat
(sh - linux/bat - windows) command
pipeline {
agent any
stages {
stage('Hello') {
steps {
// Run the 'echo' command using the 'bat' step and redirect the output to the file
bat 'echo Hello World > Helloworld.txt'
}
}
}
}
but still better way would be writeFile
link
答案2
得分: 0
使用[writeFile][1]
步骤。它是流水线插件的一个基本包含步骤。
script {
// 首先设置一个变量
text = "Hello world"
// 打印它
echo '$text'
// 写入文件
writeFile(
'file': 'Helloworld.txt',
'text': '$text'
)
}
英文:
I don't know that you can do just one command. you may have to script and output with one and write with the other.
Use the [writeFile][1]
step. It's a basic, included step with the pipeline plugin.
script {
// first set a var
text = "Hello world"
// print it
echo '$text'
// write the file
writeFile(
'file': 'Helloworld.txt',
'text': '$text'
)
}
通过集体智慧和协作来改善编程学习和解决问题的方式。致力于成为全球开发者共同参与的知识库,让每个人都能够通过互相帮助和分享经验来进步。
评论