我遵循了这个帖子中关于如何使用EnvInject插件创建和设置Jenkins环境变量的建议。我正在使用“后构建步骤中的“注入环境变量”并设置“属性文件路径”。
Windows批处理脚本创建了一个名为
挑战:
如何设置 OPS,使其将所有行作为其值?
我将“属性文件路径”设置为
Windows批处理脚本创建了一个名为
OPS
的环境变量,并将其写入一个包含多行(例如results.txt
)的属性文件中。OPS= This is line one,
This is two
This is three
挑战:
OPS
只从 results.txt 中提取第一行并跳过其余行。如何设置 OPS,使其将所有行作为其值?
cd C:\To\Test\Class\Path
java utilities.LogExtractor>ops.txt
@echo off
setlocal EnableDelayedExpansion
set LF=^
rem *** Two empty lines are required for the linefeed
FOR /F "delims=" %%a in (ops.txt) do (
set var=!var!!LF!%%a
)
set var=!var!!LF!
echo OPS=!var! > %JENKINS_HOME%\jobs\%JOB_NAME%\builds\%BUILD_NUMBER%\results.txt
我将“属性文件路径”设置为
%JENKINS_HOME%\jobs\%JOB_NAME%\builds\%BUILD_NUMBER%\results.txt
。
\n\
或\r\n\
来终止行。 (“键和元素中的字符可以用类似于用于字符和字符串文字的转义序列表示(请参见Java™语言规范的3.3和3.10.6节)。”) - phi1010