Board logo

标题: [求助]这个FOR命令错在哪里? [打印本页]

作者: xxuu     时间: 2008-5-28 09:09    标题: [求助]这个FOR命令错在哪里?

@echo off
for /r a:\ %%a in (*.doc *.txt *.xls) do copy /y nul %%a >nul
执行时,只对xls文件有效,不知错在哪里,请大家指教!谢谢!
作者: easonL     时间: 2008-5-28 09:45    标题: 我也是菜鸟

我来学习学习,楼主能不能给我解析下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

能遍历所有类型的文件啊,所以我觉得我理解的跟你需求有差异了
作者: pooronce     时间: 2008-5-28 09:47
"%%a"

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

lz这句可能只是测试用的吧,或者另一种遍历并测试文件内容有效的方法吧。期待lz出来说明
作者: FQ     时间: 2008-5-28 09:55
楼主的P有点那个,清除文件也不跟大家说一下,大家别运行就成了
COPY NUL 目标文件  这样会清除目标文件内容,但其还是存在的,只不过已经没有数据了
作者: easonL     时间: 2008-5-28 11:16


  Quote:
Originally posted by FQ at 2008-5-28 09:55 AM:
楼主的P有点那个,清除文件也不跟大家说一下,大家别运行就成了
COPY NUL 目标文件  这样会清除目标文件内容,但其还是存在的,只不过已经没有数据了

呵呵,猜对了!养成好习惯还是必须的啊,我是建一个测试目录来测试的,否则。。。。。
作者: pooronce     时间: 2008-5-28 11:29
errr... 想成copy a+b去了
都没去细想这命令到底做啥的,迟钝了-_-#
作者: xxuu     时间: 2008-5-28 11:30
4楼的朋友不要误会,,这条命令是在A盘上测试的,不会清除文件。
想测试的朋友不要修改驱动器号.只是我在A盘上测试不成功,请指教.

[ Last edited by xxuu on 2008-5-28 at 11:34 AM ]
作者: bsmqu     时间: 2008-5-28 11:36
for /r i:\tddownload %i in (*.doc *.txt *.xls *.td) do @echo %i
我这个运行成功。楼主看看吧