批处理问题 for /r

@echooffsetlocalenabledelayedexpansionset/asum=1for/r%%ain(*.txt)do(rename%%a%sum%.tx... @echo off
setlocal enabledelayedexpansion
set /a sum=1
for /r %%a in (*.txt) do ( rename %%a %sum%.txt && set /a sum = %sum% + 1)
pause
修改文件名成1.txt,2.txt.3.txt...............
现在只能成功第一个就显示:存在一个重名文件,或是找不到文件。
初步估计是 set /a sum = %sum% + 1这里失败
求指教
展开
 我来答
sudoku52
2012-08-31 · TA获得超过7万个赞
知道大有可为答主
回答量:1.2万
采纳率:82%
帮助的人:4926万
展开全部
@echo off
setlocal enabledelayedexpansion
set /a sum=1
for /r %%a in (*.txt) do ( rename %%a !sum!.txt && set /a sum +=1)
pause

把原来的1.txt先改名,要不还得重名。
批处理全能手
2012-08-31 · TA获得超过142个赞
知道答主
回答量:125
采纳率:0%
帮助的人:121万
展开全部
@echo off
setlocal enabledelayedexpansion
set /a sum=1
for /f %%a in ('dir/b *.txt') do ( rename %%a %sum%.txt && set /a sum = %sum% + 1)
pause
追问
楼上的可以的 也谢谢你了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式