Board logo

标题: 如何屏蔽FOR (SET)括号部分输出错信息.(已结) [打印本页]

作者: haiou327     时间: 2008-8-9 19:37    标题: 如何屏蔽FOR (SET)括号部分输出错信息.(已结)
@echo off
set drv=z y x w v u t s r q p o n m l k j i h g f e d c
for %%c in (%drv%) do (
for /f "tokens=* delims=*" %%c in ('dir /a-d/b/s %%c:\qq.exe') do (
echo %%~dpc
))
pause


如何屏蔽('dir /a-d/b/s %%c:\qq.exe')这部分错误输出信息.


@echo off
set drv=z y x w v u t s r q p o n m l k j i h g f e d c
for %%c in (%drv%) do (
for /f "tokens=* delims=*" %%i in ('dir /a-d/b/s %%c:\*.com') do (
echo %%~ni
)
)
pause


('dir /a-d/b/s %%c:\*.com')这部分系统找不到文件路径和设备未准备就绪的错误信息如何屏蔽了, 2>nul用在这里哪个位置都会造成整句不能运行.

Last edited by haiou327 on 2008-8-10 at 11:16 AM ]
附件 1: error.JPG (2008-8-9 20:31, 24.92 KiB, 下载附件所需积分 1点 ,下载次数: 3)



作者: jh1688     时间: 2008-8-10 07:46
第一部分:我改动了一下你的批处理,得到解决:

@echo on
set drv=c d e f g h i j k l m n o p q r s t u v w x y z
for %%c in (%drv%) do (
for /f "delims=*" %%c in ('dir /a-d/b/s %%c:\qq.exe') do (
echo %%~dpc
))2>nul
pause


第二部分也如法炮制得到解决

@echo off
set drv=c d e f g h i j k l m n o p q r s t u v w x y z
for %%c in (%drv%) do (
for /f "delims=*" %%i in ('dir /a-d/b/s %%c:\*.com') do (
echo %%~ni
)
)2>nul
pause

作者: haiou327     时间: 2008-8-10 11:15
不胜感激!!!!!!!!!!!!!