求BAT或者VBS脚本,批量重命名一个文件夹下面的文件为0001 、0002、0003、0004、0005、依次等等

 我来答
帐号已注销
2012-06-09 · TA获得超过353个赞
知道小有建树答主
回答量:606
采纳率:0%
帮助的人:625万
展开全部
@echo off & setlocal enabledelayedexpansion
pushd "test"
rem test是文件夹名称
for /f "tokens=* delims=" %%i in ('dir /s /b /a-d') do (
set /a num+=1
if !num! lss 1000 set "name=0!num!"
if !num! lss 100 set "name=00!num!"
if !num! lss 10 set "name=000!num!"
ren "%%~i" "!name!%%~xi"
rem 如果不想保留扩展名则把上一句改成:ren "%%~i" "!name!"
)
echo All Done
pause & exit

楼上的虽然是九级。。但是我的代码兼容任意扩展名。。还请lz测试后再做决定。
而且ls的cd在别的盘符不管用(如果批处理在c:盘,而目标文件夹在d:盘则cd不过去)
ningfengx
2012-06-09 · TA获得超过1195个赞
知道小有建树答主
回答量:1706
采纳率:0%
帮助的人:893万
展开全部
这个bat不要放在要处理的文件夹内,否则批处理本身也会被改成000X。
路径和文件后缀你写。

@echo off
setlocal enabledelayedexpansion
::Tpath=目标文件夹路径
set Tpath=D:\Backup\Desktop\New folder\
set /a num=1
for /f "delims=" %%i in ('dir "%Tpath%" /aa/b')do (
cd "%Tpath%"
::下面需自行修改文件后缀,如"000!num!.txt"、"000!num!.jpg"。
ren "%%i" "000!num!"
set /a num+=1)
exit
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
CrownKing1983
2017-09-12 · TA获得超过388个赞
知道小有建树答主
回答量:148
采纳率:0%
帮助的人:59.9万
展开全部
@echo off
setlocal enabledelayedexpansion
for /d %%a in (*) do (
set n=10000
for /f "delims=" %%i in ('dir /b /a-d "%%a\*.*"') do (
set /a n+=1
ren "%%a\%%i" "!n:~1!%%~xi"
)
)

这么小儿科的问题。10分儿拿来 不谢
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式