中国DOS联盟

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

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

中国DOS联盟论坛
现在时间是 2026-07-31 23:36
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » 这些文件怎么批量改名 查看 5,656 回复 35
31 发表于 2007-07-28 15:35 ·  中国 广东 珠海 香洲区 电信
初级用户
积分 57
发帖 29
注册 2006-09-27 02:04
19年会员
UID 63754
状态 离线
楼主建议你下载个软件,很好用.名字叫《拖把更名器》
32 发表于 2007-07-30 14:42 ·  中国 江苏 扬州 电信
初级用户
积分 35
发帖 22
注册 2007-06-29 22:34
19年会员
UID 92723
性别 男
状态 离线
不太理解?
33 发表于 2007-07-30 23:33 ·  中国 湖北 黄冈 电信
高级用户
★★★
积分 894
发帖 411
注册 2007-02-17 12:15
19年会员
UID 79697
性别 男
状态 离线
用 dir 生成文件列表, 再用 for 来读取 ,用 set /a 来增值, 用if 来判断

set 的替换也不错
@set c= 不知则觉多,知则觉少,越知越多,便觉越来越少. --- 知多少.
@for,/l,%%i,in,(1,1,55)do,@call,set/p=%%c:~%%i,1%%<nul&ping/n 1 127.1>nul


34 发表于 2007-07-30 23:50 ·  中国 陕西 汉中 电信
新手上路
积分 16
发帖 8
注册 2007-07-27 23:10
19年会员
UID 94156
性别 男
状态 离线
这个搞一个GWBASIC.的程序不是更简单,为啥要学DOS命令FOR搞循环这么麻烦呢?不直观,可读性真差,不好记容易出错
你先用DIR *.* >1.txt 把所有要改的文件名输出到1.txt
当然1.txt稍稍编辑一下,无关的几行(不多)删了
然后用BASIC读入1.txt中的文件名,用字符串函数处理 最后再输出
具体复杂的,我写不出来,怕嘛烦呀 ,我太懒,呵呵
比如 旧文件名赋给变量OLDNAME$ 新文件名NEWNAME$
最后就用一条语句
SHELL "REN "+OLDNAME$+" "+NEWNAME$
执行就改过来了
用一个循环结构或条件判断就可以改所有文件名字了
BASIC还是强大的相对于DOS的FOR不是同一量级的,而且直观不易出错,没用GWBASIC用QBASIC也一样,这个还是DOS自带的呢,没必要学习繁复的FOR命令了
个人意见,仅供参考
35 发表于 2007-07-30 23:51 ·  中国 陕西 汉中 电信
新手上路
积分 16
发帖 8
注册 2007-07-27 23:10
19年会员
UID 94156
性别 男
状态 离线
QBASIC不知道有没有SHELL命令,但是至少应该能实现相同功能
36 文件名修改问题 发表于 2008-05-09 20:43 ·  中国 湖南 湘潭 雨湖区 电信
初级用户
积分 47
发帖 16
注册 2008-05-06 12:59
18年会员
UID 117887
性别 男
状态 离线
请教:如何将当前目录下的所有TXT文件按 1.txt 2.txt 3.txt …… 重命名
论坛跳转: