又要一波迁移Jenkins服务,遇到了头疼的事情,Jenkins下的所有项目的配置脚本都需要修改环境。乍一看,100个左右的项目,人肉改的话,岂不是人都要变傻。

Jenkis上所有项目的配置其实都是文件存储的,基于我当时的服务器系统是window环境,配置文件在安装目录下的job的文件夹里的config.xml
在这里插入图片描述
现在要将所有的config.xml里的

这里的" 是一个双引号 
"C:\Program Files\360jiagubao_windows_64\jiagu\jiagu.jar"

修改成

%JAR_HOME%

注意坑:由于window 环境,路径写成反斜杠 ,反斜杠在sed命令里需要特殊处理。

sed命令

sed -i s#原字符串#需要被替换后的字符串#g 

window循环目录

//答应路径下的所有的config.xml的文件名
//%i 这里是文件
for /r %i in (config.xml) do ( echo %i ) 

最终解决

1)进入到Jenkins的job路径下
(2)cmd  窗口 执行以下命令(循环路径,找到对应的config.xml)
for /r %i in (config.xml) do ("D:\Git\usr\bin\sed.exe" -i "s#"C:\\\\Program Files\\\\360jiagubao_windows_64\\\\jiagu\\\\jiagu.jar"#%JAGU_JAR_HOME%#g" %i)
Logo

权威|前沿|技术|干货|国内首个API全生命周期开发者社区