如何使用批处理脚本删除Jenkins工作区中以点(.)开头的文件
批处理删除Jenkins工作区点开头文件的实现方法
方法1:精准删除指定的点开头文件
如果只需要删除.jazz和.project两个特定文件,直接在Jenkins的「执行Windows批处理命令」步骤中写入以下代码即可:
:: 切换到当前Jenkins任务的工作区根目录 cd /d "%WORKSPACE%" :: 强制删除指定点开头文件,忽略找不到文件的报错 del /f /s /q .jazz 2>nul del /f /s /q .project 2>nul
参数说明:
/f强制删除只读属性的文件/s递归搜索所有子目录下的目标文件/q静默删除不弹出确认提示2>nul屏蔽文件不存在的报错,避免Jenkins任务误判执行失败
方法2:批量删除所有点开头的文件和文件夹
如果需要清理工作区中所有以.开头的文件/目录,使用以下脚本:
cd /d "%WORKSPACE%" :: 批量删除所有点开头的文件 for /f "delims=" %%i in ('dir /b /s /a:-d .* 2^>nul') do del /f /q "%%i" :: 批量删除所有点开头的文件夹 for /f "delims=" %%i in ('dir /b /s /a:d .* 2^>nul') do rd /s /q "%%i"
注意:如果直接在本地CMD窗口手动测试命令,需要把脚本中的
%%i改为%i再执行,只有写入.bat批处理文件运行时才需要使用双百分号。
注意事项
执行删除前可以先把del/rd命令替换为echo,先预览待删除的内容,确认无误后再执行实际删除操作,避免误删业务文件。
Jenkins内置的WORKSPACE环境变量默认指向当前任务的工作区根目录,不需要手动修改路径,如果需要指定其他目录,替换为实际的绝对路径即可。
内容的提问来源于stack exchange,提问作者Kivi
相关产品推荐
相关产品推荐

