1.重命名文件.bat@echo off //关闭回显
setlocal enabledelayedexpansion //设置延迟加载变量(概念自行百度)
for /F "delims=" %%i in ('dir /A:-D /B "*(1).*"') do ( //循环遍历当前文件夹下的文件
set a=%%i //用变量a代表文件名
set a=!a:.a=! //替换文件名中的.a字符为空,这里用了延迟变量加载,如果不用应该写成%a:.a=%
set a=!a:^(1^)=! //替换文件名中的(1)为空
rename %%i !a! //重命名文件,去掉了.a和(1)
)
知识点:
@echo off //关闭回显
setlocal enabledelayedexpansion //设置延迟加载变量(概念自行百度)
for /F "delims=" %%i in ('dir /A:-D /B "*(1).*"') do ( //循环遍历当前文件夹下的文件
set a=%%i //用变量a代表文件名
set a=!a:.a=! //替换文件名中的.a字符为空,这里用了延迟变量加载,如果不用应该写成%a:.a=%
set a=!a:^(1^)=! //替换文件名中的(1)为空
rename %%i !a! //重命名文件,去掉了.a和(1)
)
1.延迟变量加载,就是原来用%a%引用变量,改为用!a!引用,区别在与赋值顺序。前者在代码预编译的时候就被赋值,这样引用到的值就是预编译时候的值,是一致的;后者则是在代码运行时赋值
2.替换语法,在可以输出变量的地方,%变量名:被替换字符=替换字符%
3.字符串替换:拿到变量!a!怎么替换掉.a呢,总结一点:首先被替换对象必
2.替换语法,在可以输出变量的地方,%变量名:被替换字符=替换字符%
3.字符串替换:拿到变量!a!怎么替换掉.a呢,总结一点:首先被替换对象必