中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --
联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟
中国DOS联盟论坛
现在时间是 2026-08-07 12:11
48,040 主题排行 / 350,125 发帖 / 今日 0 篇 / 48,252 会员排行
DOS批处理 & 脚本技术(批处理室) » [求助]批量修改文件名
可打印版本  1,480 / 4
第1楼 5488 发表于 2008-02-09 00:52
初级用户 发帖 16 积分 52
[求助]批量修改文件名
刚学批处理,对一些指令的使用还不熟悉
所以试求这样的一个P,把指定文件夹内的文件的文件名改成数列的形式,类似于1.txt2.txt
呵呵,让你们见笑了
第2楼 zyz0304360 发表于 2008-02-09 01:03
中级用户 发帖 123 积分 257 来自 烟台
帮你顶顶~~
我也得学学
第3楼 slore 发表于 2008-02-09 01:07
铂金会员 发帖 2,478 积分 5,212
for, dir ,set i+=1,ren
第4楼 zyz0304360 发表于 2008-02-09 01:09
中级用户 发帖 123 积分 257 来自 烟台
@echo off
set a=0
setlocal EnableDelayedExpansion
for %%n in (*.txt) do (
set /A a+=1
if !a! LSS 10 (ren "%%n" "说明0!a!.txt") else ren "%%n" "说明!a!.txt"
)



http://www.cn-dos.net/forum/viewthread.php?tid=19765&fpage=1&highlight=%E9%87%8D%E5%91%BD%E5%90%8D
第5楼 zyz0304360 发表于 2008-02-09 01:13
中级用户 发帖 123 积分 257 来自 烟台
@echo off
set a=0
setlocal EnableDelayedExpansion
for %%n in (*.txt) do (
set /A a+=1
if !a! LSS 10 (ren "%%n" "0!a!.txt") else ren "%%n" "!a!.txt"
)

设置了这个
setlocal EnableDelayedExpansion
所以可以用!a!代替%a%

如果小于10
就命名成01,02。。。09
大于10就直接命名了
[ 联系联盟系统管理团队 - 中国DOS联盟 - 标准版 ]
Sponsored by ifanr Inc | © 2001–2023