本帖最后由 aloha20200628 于 2024-11-12 14:16 编辑
回复 1# yydada
目录树列表须用 sort/r 排序,以便确保每个子目录节点循行 ‘自底向上’ 的顺序被逐一处理
除非某个子目录中有被保护(如被隐藏)的文件目录项,否则均会依照楼主要求删除...
本脚本文件不要放在 "E:\root" 目录或其子目录中运行
- @echo off &set "td=E:\root" &setlocal enabledelayedexpansion
- (dir /b/s/ad "%td%"|sort /r&echo,%td%)>"%td%\0.0"
- for /f "usebackq delims=" %%d in ("%td%\0.0") do (
- for /f "delims=" %%F in ('dir /b/a-d "%%d" ') do (
- set "nF=%%~nF" &set "ok=0"
- if /i "!nF:~,4!"=="pmap" if /i "%%~xF"==".vpk" set "ok=1"
- if !ok! equ 0 del /q "%%d\%%F"
- )
- rd /q "%%d"
- ) 2>nul
- endlocal&pause&exit/b
复制代码
|