![]() |
中国DOS联盟-- 联合DOS 推动DOS 发展DOS --联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum |
| 游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟 |
|
中国DOS联盟论坛 现在时间是 2026-09-23 18:03 |
共 47,812 主题排行 / 349,917 发帖 / 今日 0 篇 / 48,274 会员排行 |
| DOS批处理 & 脚本技术(批处理室) » 批量按序更改文件名(已结) |
| 可打印版本 1,359 / 5 |
| 第1楼 buddiyar | 发表于 2006-07-09 02:27 |
| 初级用户 发帖 75 积分 160 | |
|
批量按序更改文件名(已结) 现有25个文本文件,其名称按序分别由1.txt增至25.txt,其内容对应于文件名.现欲写一批处理程序一次性按序更改其名称,要求将2txt更名为1txt,3txt则相应更名为2txt,以此类推至25.txt更名为24.txt.而1.txt更名为250.txt!
我自己写的程序如下,有错误却苦于无法修正,请高手指点 --------------------------rennum.bat------------------------------- rem 生成文本文件 for /l %%i in (1,1,25) do echo %%i >%%i.txt rem 生成过渡变量文件 for /l %%i in (2,1,25) do echo %%i >> num.txt setlocal ENABLEDELAYEDEXPANSION ren 1.txt temp.txt rem 减序更名文件 for /f %%i in (num.txt) do ( set /a j=%%i && set /a j=j-1 && ren %%i.txt %j%.txt ) ren temp.txt 25.txt ENDLOCAL [ Last edited by buddiyar on 2006-7-15 at 01:13 ] |
|
| 第2楼 doscc | 发表于 2006-07-09 03:10 |
| 中级用户 发帖 93 积分 256 来自 广东 | |
|
|
| 第3楼 buddiyar | 发表于 2006-07-09 05:53 |
| 初级用户 发帖 75 积分 160 | |
|
ren %%i.txt !j!.txt
哪位兄弟能解释一下"!j!.txt"吗 小弟刚开始学这个啊 在此谢过先 |
|
| 第4楼 buddiyar | 发表于 2006-07-09 06:34 |
| 初级用户 发帖 75 积分 160 | |
| 第5楼 namejm | 发表于 2006-07-11 09:49 |
| 荣誉版主 发帖 1,737 积分 5,226 来自 成都 | |
|
先用setlocal ENABLEDELAYEDEXPANSION然后再用!,表示启用了变量延迟,请参考这个帖子。
什么情况下该启用变量延迟: http://www.cn-dos.net/forum/viewthread.php?tid=20733&fpage=1&highlight=%E5%8F%98%E9%87%8F%E5%BB%B6%E8%BF%9F |
|
| 第6楼 doscc | 发表于 2006-07-11 16:12 |
| 中级用户 发帖 93 积分 256 来自 广东 | |
Originally posted by namejm at 2006-7-11 09:49: |
|
|
[ 联系联盟系统管理团队 -
中国DOS联盟 -
标准版 ] Sponsored by ifanr Inc | © 2001–2023 |