如何在Jenkins Windows节点用流水线脚本进入_development后缀文件夹?
在Jenkins Windows节点中定位并进入以_development结尾的目录
实现思路
通过Windows原生命令或PowerShell,在指定工作区根目录下筛选出以_development结尾的子目录,将其路径赋值给变量后,切换到该目录执行后续构建操作。
具体实现脚本
方法1:使用Windows批处理命令
pipeline { agent { label '你的Windows节点标签' } stages { stage('定位并进入开发目录') { steps { script { // 切换到工作区根目录 dir('D:\\Node\\MyNode\\') { // 查找以_development结尾的目录,返回完整路径 def devDir = bat( script: 'for /d %%d in (*_development) do echo %%~fd', returnStdout: true ).trim() // 进入目标目录执行操作 dir(devDir) { echo "当前工作目录:${pwd()}" // 这里替换为你的实际构建命令,比如npm install、编译脚本等 bat 'npm install' } } } } } } }
方法2:使用PowerShell命令
pipeline { agent { label '你的Windows节点标签' } stages { stage('定位并进入开发目录') { steps { script { dir('D:\\Node\\MyNode\\') { // PowerShell筛选目录并返回完整路径 def devDir = powershell( script: 'Get-ChildItem -Directory -Filter "*_development" | Select-Object -ExpandProperty FullName', returnStdout: true ).trim() dir(devDir) { echo "当前工作目录:${pwd()}" powershell 'npm install' } } } } } } }
注意事项
- 确保
D:\Node\MyNode\下仅存在一个以_development结尾的目录,避免返回多路径导致后续步骤出错 - 若存在多个符合条件的目录,可在命令中添加排序逻辑(比如按创建时间取最新目录)
- 脚本中的
你的Windows节点标签需替换为Jenkins中实际的Windows节点标识
内容的提问来源于stack exchange,提问作者KK99
相关产品推荐
相关产品推荐

