- @echo off & setlocal enabledelayedexpansion
- set "num=0"
- rem 初始化num, 已改名的文件,我们会用 _vvv 来标记.
- for /f "tokens=* delims=" %%i in ('dir /a-d /b /s *_vvv.txt') do (
- set /a num+=1
- )
-
- rem 修改未改名的文件为 已改名文件的总数 + 1
- for /f "tokens=* delims=" %%i in ('dir /a-d /b /s *.txt && !*_vvv.txt') do (
- ren "%%i" "!num!_vvv.txt"
- set /a num+=1
- )
- pause
复制代码 由于我不知道我的意思用bat怎么表达, 所以我写的是伪代码. 相信你们能明白.
*.txt && !*_vvv.txt 的意思是 是*.txt 并且要排除 *_vvv.txt |