中国DOS联盟

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

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

中国DOS联盟论坛
现在时间是 2026-08-08 20:01
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » [求助]这个FOR命令错在哪里? 查看 641 回复 7
楼 主 [求助]这个FOR命令错在哪里? 发表于 2008-05-28 09:09 ·  中国 山东 青岛 联通
初级用户
积分 21
发帖 8
注册 2007-03-11 23:05
19年会员
UID 81438
性别 男
状态 离线
@echo off
for /r a:\ %%a in (*.doc *.txt *.xls) do copy /y nul %%a >nul
执行时,只对xls文件有效,不知错在哪里,请大家指教!谢谢!
2 我也是菜鸟 发表于 2008-05-28 09:45 ·  中国 江苏 南京 电信
初级用户
★★
E生迅徒
积分 118
发帖 56
注册 2008-05-22 16:34
18年会员
UID 119421
性别 男
来自 南京
状态 离线
我来学习学习,楼主能不能给我解析下copy /y nul %%a >nul,是什么意思啊?我看下文档,不是很理解。

然后我运行下
for /r D:\batch\test %%a in (*.doc *.txt *.xls) do echo %%a
结果是:
D:\batch\test\1.xls
D:\batch\test\Folder\1.xls
D:\batch\test\Folder1\New text file.txt
D:\batch\test\Folder2\New Microsoft Word 文書.doc
D:\batch\test\Folder2\New text file.txt

能遍历所有类型的文件啊,所以我觉得我理解的跟你需求有差异了
無求一生光輝 唯朢鬥志不會斷
3 发表于 2008-05-28 09:47 ·  中国 上海 浦东新区 电信
中级用户
★★
积分 484
发帖 250
注册 2007-06-05 23:33
19年会员
UID 90372
性别 男
状态 离线
"%%a"

因为有些文件路径中有空格,我想多数错误情况是出在这里

lz这句可能只是测试用的吧,或者另一种遍历并测试文件内容有效的方法吧。期待lz出来说明
4 发表于 2008-05-28 09:55 ·  中国 北京 联通
社区乞丐
积分 -61
发帖 37
注册 2008-04-19 17:10
18年会员
UID 116329
性别 男
状态 离线
楼主的P有点那个,清除文件也不跟大家说一下,大家别运行就成了
COPY NUL 目标文件 这样会清除目标文件内容,但其还是存在的,只不过已经没有数据了
5 发表于 2008-05-28 11:16 ·  中国 江苏 南京 联通
初级用户
★★
E生迅徒
积分 118
发帖 56
注册 2008-05-22 16:34
18年会员
UID 119421
性别 男
来自 南京
状态 离线
Originally posted by FQ at 2008-5-28 09:55 AM:
楼主的P有点那个,清除文件也不跟大家说一下,大家别运行就成了
COPY NUL 目标文件 这样会清除目标文件内容,但其还是存在的,只不过已经没有数据了



呵呵,猜对了!养成好习惯还是必须的啊,我是建一个测试目录来测试的,否则。。。。。
無求一生光輝 唯朢鬥志不會斷
6 发表于 2008-05-28 11:29 ·  中国 上海 浦东新区 电信
中级用户
★★
积分 484
发帖 250
注册 2007-06-05 23:33
19年会员
UID 90372
性别 男
状态 离线
errr... 想成copy a+b去了
都没去细想这命令到底做啥的,迟钝了-_-#
7 发表于 2008-05-28 11:30 ·  中国 山东 青岛 联通
初级用户
积分 21
发帖 8
注册 2007-03-11 23:05
19年会员
UID 81438
性别 男
状态 离线
4楼的朋友不要误会,,这条命令是在A盘上测试的,不会清除文件。
想测试的朋友不要修改驱动器号.只是我在A盘上测试不成功,请指教.

[ Last edited by xxuu on 2008-5-28 at 11:34 AM ]
8 发表于 2008-05-28 11:36 ·  中国 广东 惠州 电信
初级用户
积分 114
发帖 6
注册 2005-04-04 00:00
21年会员
UID 37816
性别 男
状态 离线
for /r i:\tddownload %i in (*.doc *.txt *.xls *.td) do @echo %i
我这个运行成功。楼主看看吧
论坛跳转: