Board logo

标题: 如何去除找不到文件的提示 [打印本页]

作者: wuhanbin     时间: 2008-8-19 11:15    标题: 如何去除找不到文件的提示

有这么一段批处理
@echo off
for /f "delims=" %%i in ('dir "c:\system\" /b/s/d/a-d') do echo "%%i"-"%setup%:%%~pnxi">>1.txt
pause>nul
现在创建c:\system(空文件夹),运行上述命令后屏幕会提示找不到文件,我想把这个提示隐藏。
但是发现在语句后加>nul,即使c:\system内有文件,也不能把正确的输出结果放到1.txt中了,怎么办?

[ Last edited by wuhanbin on 2008-8-19 at 11:18 AM ]
作者: HAT     时间: 2008-8-19 11:30

@echo off
for /f "delims=" %%i in ('dir "c:\system\" /b/s/d/a-d 2^>nul') do echo "%%i"-"%setup%:%%~pnxi">>1.txt
pause>nul
[ Last edited by HAT on 2008-8-19 at 11:31 AM ]
作者: wuhanbin     时间: 2008-8-19 12:56
想请教一下,2楼代码 2^>nul' 中的2^是什么意思?看不懂
作者: HAT     时间: 2008-8-19 13:33
2表示出错信息,可以搜索一下"句柄和重定向"相关的文章。
^用来对后面的>进行转义:

CMD/DOS下符号的作用参考
http://www.cn-dos.net/forum/viewthread.php?tid=30985&fpage=4
作者: wuhanbin     时间: 2008-8-19 13:55
万分感谢