用批处理实现将文件以数字重命名的代码_DOS/BAT教程-查字典教程网
用批处理实现将文件以数字重命名的代码
用批处理实现将文件以数字重命名的代码
发布时间:2016-12-28 来源:查字典编辑
摘要:要求:1、不能改变a.txt内容的顺序2、将当前目录下的所有jpg文件以序号的形式重命名如:从1-163、如果有16个文件,必须重命名为1-...

要求:

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等命令来获取文件名的话,获取的先后次序会有一定规律,导致有些问题不能体现出来

复制代码 代码如下:

@echoon

setlocalenabledelayedexpansion

setn=0

setn1=0

for/f"tokens=*"%%ain(a.txt)do(

set/an+=1

ren%%at!n!.jpg

)

:loop

set/an1+=1

rent%n1%.jpg%n1%.jpg&&goto:loop

exit

第二种方法

好像可以更简单点

复制代码 代码如下:

@echooff

ren*.jpgt*.jpg

setlocalenabledelayedexpansion

for/f"delims="%%ain('dir/b"t*.jpg"')do(

setstr=%%a&setstr=!str:~1!

ren"%%a""!str!"

)

pause

相关阅读
推荐文章
猜你喜欢
附近的人在看
推荐阅读
拓展阅读
  • 大家都在看
  • 小编推荐
  • 猜你喜欢
  • 最新DOS/BAT学习
    热门DOS/BAT学习
    脚本专栏子分类