在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
要求: 1、不能改变a.txt内容的顺序 2、将当前目录下的所有jpg文件以序号的形式重命名 如:从1-16 3、如果有16个文件,必须重命名为1-16,不允许出现16之后的序号 a.txt 内容: 复制代码 代码如下: 2.jpg 1.jpg a.jpg 5ww.jpg c.jpg f.jpg rty.jpg 3.jpg 11.jpg b.jpg 6.jpg e.jpg 8.jpg 111.jpg 7.jpg 30.jpg a.txt中的内容其实就是当前文件夹下的jpg文件列表。 要求将当前文件夹里的所有jpg文件以序号的形式重命名。 但只能从 a.txt 获取当前文件夹里的所有 jpg 的文件名。 以序号重命名文件,陷阱重重,但如果用dir或for等命令来获取文件名的话,获取的先后次序会有一定规律,导致有些问题不能体现出来 复制代码 代码如下: @echo on setlocal enabledelayedexpansion set n=0 set n1=0 for /f "tokens=*" %%a in (a.txt) do ( set /a n+=1 ren %%a t!n!.jpg ) :loop set /a n1+=1 ren t%n1%.jpg %n1%.jpg&&goto :loop exit 第二种方法 好像可以更简单点 复制代码 代码如下: @echo off ren *.jpg t*.jpg setlocal enabledelayedexpansion for /f "delims=" %%a in ('dir/b "t*.jpg"') do ( set str=%%a&set str=!str:~1! ren "%%a" "!str!" ) pause |
请发表评论