如何编写批处理文件无提示批量删除不同路径下的指定文件?
一键清理指定路径文件的批处理方案
嘿,手动重复删这些文件确实够折腾的!我给你写个简单的批处理脚本,一次性搞定无提示删除,以后双击就行,省不少事儿。
脚本代码
@echo off :: 清理第一个路径:保留tmp文件夹,删除其下所有内容 :: 删除tmp下的所有文件(包括子文件夹里的) del /f /s /q "C:\Users\irem\AppData\Roaming\JDeveloper\systemx\DD\servers\DefaultServer\tmp\*" :: 删除tmp下的所有子文件夹及其内容 for /d %%i in ("C:\Users\irem\AppData\Roaming\JDeveloper\systemx\DD\servers\DefaultServer\tmp\*") do rd /s /q "%%i" :: 清理第二个路径:替换成你实际的完整o开头路径,以下是示例逻辑 :: 如果你要保留这个o开头的文件夹,只删内部内容,用下面两行(和第一个路径逻辑一致) del /f /s /q "C:\Users\irem\AppData\Roaming\JDeveloper\systemx\oXXXX\*" for /d %%i in ("C:\Users\irem\AppData\Roaming\JDeveloper\systemx\oXXXX\*") do rd /s /q "%%i" :: 如果你要直接删除整个o开头的文件夹(包括文件夹本身),替换上面两行成这一行: :: rd /s /q "C:\Users\irem\AppData\Roaming\JDeveloper\systemx\oXXXX" echo 清理完成! :: 不需要提示的话可以删掉上面这行 pause >nul :: 要执行完直接关窗口就删掉这行,想留着看结果就保留
关键命令解释
@echo off:关闭命令行的命令回显,让运行过程更干净,不会逐条显示执行的命令del /f /s /q:/f:强制删除只读文件,避免因文件属性导致删不掉/s:递归删除目标路径下所有子文件夹里的文件/q:静默删除,全程不弹出确认提示
for /d %%i in (...) do rd /s /q "%%i":遍历目标路径下的所有子文件夹,逐个调用命令删除整个文件夹及其内部所有内容rd /s /q:直接删除指定文件夹(含自身)以及所有子文件夹和文件,全程静默无提示
使用步骤
- 把代码复制到记事本中
- 将第二个路径里的
oXXXX替换成你实际的完整路径(比如C:\Users\irem\AppData\Roaming\JDeveloper\systemx\oracle) - 保存文件,后缀名改成
.bat(比如命名为JDevClean.bat) - 以后每次启动调试前,双击这个批处理文件即可自动完成清理
内容的提问来源于stack exchange,提问作者iremenerys
相关产品推荐
相关产品推荐

