You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何通过批处理脚本删除目标目录及子目录中多份重复的Settings.txt文件

批处理实现方案

核心逻辑

先递归遍历指定目录下所有Settings.txt文件并统计数量,仅当数量≥2时删除所有匹配文件,其余情况直接执行后续逻辑。

完整脚本

@echo off
setlocal enabledelayedexpansion

:: 基础配置
set "TARGET_ROOT=D:\TargetFolder"
set "TARGET_FILE=Settings.txt"
set /a file_count=0

:: 递归查找所有匹配文件,统计数量并存储路径
for /f "delims=" %%f in ('dir /s /b /a-d "%TARGET_ROOT%\%TARGET_FILE%" 2^>nul') do (
    set /a file_count+=1
    set "file_path_!file_count!=%%f"
)

:: 数量≥2时批量删除所有匹配文件
if %file_count% geq 2 (
    for /l %%i in (1,1,%file_count%) do (
        del /f /q "!file_path_%%i!"
    )
)

:: --------------------
:: 后续业务逻辑写在此处
:: --------------------

endlocal
exit /b

代码说明

  • dir /s /b /a-d:递归查找所有匹配的文件,/a-d参数排除同名目录的干扰,2^>nul屏蔽文件未找到的报错信息
  • 查找文件时同步存储所有匹配文件的路径,避免删除时二次遍历带来的性能损耗和文件状态变更导致的异常
  • del /f /q:强制删除只读属性的文件,且静默删除无弹窗提示

内容的提问来源于stack exchange,提问作者Michael513

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.04 10:09:01