中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

中国DOS联盟论坛
现在时间是 2026-08-01 11:36
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » [求助]如何实现文件批量重命名(1.rm --> 001.rm 这样的) 查看 2,103 回复 8
楼 主 [求助]如何实现文件批量重命名(1.rm --> 001.rm 这样的) 发表于 2005-02-20 00:00 ·  中国 山东 淄博 联通
初级用户
积分 111
发帖 4
注册 2005-02-20 00:00
21年会员
UID 36346
性别 男
状态 离线
从网上下载过一些文件, 命令规则为 1.rm 2.rm ... 11.rm 12.rm ... 100.rm 这样的.

在资源管理器里按文件名排序就不太爽了, dos下有没有方便的方法可以统一的补全三(或指定位数), 即 1.rm --> 001.rm 11.rm --> 011.rm 这样的.

另, 有的情况下, 数字前面还带些前缀, 如 sanguo1.rm 这样的, 应该改成 sanguo001.rm这样.



试了半天的for 一直不行, 求助各位大侠, 请多多指教.

2 发表于 2005-02-20 00:00 ·  中国 湖南 长沙 电信
高级用户
★★
积分 772
发帖 273
注册 2004-10-23 00:00
21年会员
UID 32861
性别 男
状态 离线
http://www.msfans.net/bbs/
3 发表于 2005-02-20 00:00 ·  中国 湖南 长沙 电信
高级用户
★★
积分 772
发帖 273
注册 2004-10-23 00:00
21年会员
UID 32861
性别 男
状态 离线
如果你的系统是nt构架的话可以使用FOR语句for /l %%a in (1,1,99) do ren sanguo%%a.txt 0%%a.txt
http://www.msfans.net/bbs/
4 发表于 2005-02-20 00:00 ·  中国 湖南 长沙 电信
高级用户
★★
积分 772
发帖 273
注册 2004-10-23 00:00
21年会员
UID 32861
性别 男
状态 离线
for /l %%a in (1,1,99) do ren sanguo%%a.rm 0%%a.rm
http://www.msfans.net/bbs/
5 发表于 2005-02-20 00:00 ·  中国 山东 淄博 联通
初级用户
积分 111
发帖 4
注册 2005-02-20 00:00
21年会员
UID 36346
性别 男
状态 离线
谢谢楼上.
我是2000系统, 所有你给的答案应该是正解了.

我刚试了一把, 基本应该算成功的. 它确实在每个文件前面都加了个0, 虽然不像我希望的那样( 可以区分出位数, 统一补全对应的位数,像sg1.rm 补为 sg001.rm sg10.rm 则只补1个0为sg010.rm), 但稍麻烦一点把这个命令使用两遍也就是了.

另: 对于其中的语法解释我还不是太明白, 正在找Window的帮助, 如果大侠方便, 能不能稍微解释一下.
6 发表于 2005-02-20 00:00 ·  中国 山东 淄博 联通
初级用户
积分 111
发帖 4
注册 2005-02-20 00:00
21年会员
UID 36346
性别 男
状态 离线
受教了.
我知道之前我弄了半天For 为什么不行了, 思路不对的啦.
之前我的思路是局限在从文件名上取变量, 根本没想到可以直接用 1 -99 当变量的说.
我原来 是这样用的 for %a in (sg?.rm) do echo ren %a ...
很明显上面那句是可以列出所有符合要求的文件, 但实际命令中因为无法取到数字部分, 所以只能是失败了.

OK, 再次感谢楼上, 不仅是解决问题, 而且教会我一种新的思路.
7 发表于 2005-02-20 00:00 ·  中国 湖南 长沙 电信
高级用户
★★
积分 772
发帖 273
注册 2004-10-23 00:00
21年会员
UID 32861
性别 男
状态 离线
没有大家互相学习多实践就能找出答案
http://www.msfans.net/bbs/
8 发表于 2005-02-20 00:00 ·  中国 河北 石家庄 联通
铂金会员
★★★★
网络独行侠
积分 6,962
发帖 2,753
注册 2003-04-16 00:00
23年会员
UID 1565
性别 男
来自 河北保定
状态 离线
用命令怪麻烦的,安装一个拖把更名器,想怎么改就怎么改。
偶只喜欢回答那些标题和描述都很清晰的帖子!
如想解决问题,请认真学习“这个帖子”和“这个帖子”并努力遵守,如果可能,请告诉更多的人!
9 发表于 2005-02-21 00:00 ·  中国 重庆 渝中区 电信
银牌会员
★★★
积分 2,165
发帖 730
注册 2004-04-21 00:00
22年会员
UID 22966
性别 男
状态 离线
的確受教!nt命令行較之dos真是改變很大呀!
论坛跳转: