第一个问题314ccp有回答,我就不再说了。
setlocal ENABLEDELAYEDEXPANSION
for /f "delims=" %%i in ('dir/b *.jpg') do (
set a=%%~ni
ren "%%i" "!a:~0,-2!.jpg")
1、setlocal ENABLEDELAYEDEXPANSION
变量延迟[凡是要在for语句后,再次调用你原先定义的变量,你就要用变量延迟。]
2、for /f "delims=" %%i in ('dir/b *.jpg') do (
for /f [循环]
delims=[变量的分隔符]
dir [DOS操作系统用来查看磁盘中文件的命令]
/b 使用空格式(没有标题信息或摘要)。[dir的参数,可以使用dir/?来查看。]
*.jpg [后缀名为.jpg的所有文件]
do ( [动作,如果满足条件]
3、set a=%%~ni
[给变量a赋值为'dir/b *.jpg'中的文件名(不包括后缀)]
4、ren "%%i" "!a:~0,-2!.jpg")
ren [重命名]
"%%i" "!a:~0,-2!.jpg" [*.jpg的名字改为文件名中从第一个字符到倒数第2个字符,如果是~0,-3就是0到倒数第3个,如果是~0,-1就是不做改变]
温馨提示:答案为网友推荐,仅供参考