批处理按名称顺序重命名文件 10
批处理按名称顺序重命名文件:比如我有文件810100000.png810100001.png810100002.png.............................
批处理按名称顺序重命名文件:比如我有文件810100000.png 810100001.png 810100002.png ...........................810200000.png 等等,原来的文件名都是按数字大小排列好的,我现在要重命名为1.png 2.png 3.png 4.png 5.png.................. 只有一个要求,就是顺序不能乱,还是要按照原来的顺序。这个批出来怎么弄?有高手为我解答一下啊。
这是我网上找的一段代码,可以重命名,但有时顺序会乱。
@echo off&setlocal EnableDelayedExpansion
set a=1
for /f "delims=" %%i in ('dir /b *.png') do (
if not "%%~ni"=="%~n0" (
if !a! LSS 10 (ren "%%i" "!a!.png") else ren "%%i" "!a!.png"
set/a a+=1
)
) 展开
这是我网上找的一段代码,可以重命名,但有时顺序会乱。
@echo off&setlocal EnableDelayedExpansion
set a=1
for /f "delims=" %%i in ('dir /b *.png') do (
if not "%%~ni"=="%~n0" (
if !a! LSS 10 (ren "%%i" "!a!.png") else ren "%%i" "!a!.png"
set/a a+=1
)
) 展开
2个回答
展开全部
您是想每个文件夹里的文件单独排序,还是所有文件一起排序?
每个孙文件夹中的图片单独排序:
@echo off
@setlocal enabledelayedexpansion
@for /f "delims=" %%i in ('dir /ad /b') do (
@cd %%i
@for /f "delims=" %%j in ('dir /ad /b') do (
@cd %%j
@set n=1
@for /f "delims=" %%k in ('dir /b') do (
@set fn=%%~nk
@set ext=%%~xk
@set nfn=00000!n!
每个孙文件夹中的图片单独排序:
@echo off
@setlocal enabledelayedexpansion
@for /f "delims=" %%i in ('dir /ad /b') do (
@cd %%i
@for /f "delims=" %%j in ('dir /ad /b') do (
@cd %%j
@set n=1
@for /f "delims=" %%k in ('dir /b') do (
@set fn=%%~nk
@set ext=%%~xk
@set nfn=00000!n!
追问
朋友,你的代码我放到TXT文档中,再把后缀名改为bat, 双击这个批处理后,什么反应都没有啊,文件名一点都没有变啊。是不是哪里还有设置过啊,我对这个编程一点都不懂啊,麻烦直接给我一个可以用的代码啊。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询