jenkins中的windows批处理命令
如何使用jenkinsfile在bat命令中打印jobName?
script {
jobName = JOB_NAME
echo jobName #its printing job name
bat 'echo jobName' #its not printing job name
bat 'echo $jobName' #its not printing job name
bat 'echo "$jobName"' #its not printing job name
}
或者
如何使用jenkinsfile获取JOB_NAME?
script {
bat '''
set jobName = JOB_NAME // could not find job name
echo jobName #its not printing job name
echo "%jobName%" #its not printing job name
echo 'jobName' #its not printing job name
'''
}
2条答案
按热度按时间56lgkhnf1#
Jenkins作业参数不会自动传播到shell子级。
1.反斜杠-转义美元符号
1.将变量名括在大括号中
1.复查https://jenkins.io/doc/pipeline/tour/environment/
1.尝试
withEnv
1.使用本机Jenkinsfile
echo "blah"
(或Groovyprintln "blah"
)而不是sh 'echo blah'
3zwjbxry2#
对于任何人来说,当你和
bat
一起使用时,你需要使用%VAR%
。所以基本上:这是OP已经做过的事情,但可能因为变量没有正确赋值而没有起作用。