Board logo

标题: 求助关于循环里的ERRORLEVEL值的问题 高手指点 谢谢 [打印本页]

作者: mggdx     时间: 2008-2-27 09:21    标题: 求助关于循环里的ERRORLEVEL值的问题 高手指点 谢谢

在CMD里执行
@echo off
@for /f "tokens=*" %a in ('dir /b /ad /s c:\a^|sort /r') do (
@rd "%a" /q  |findstr 目录不是空的。
@echo %errorlevel%
)
返回ERRORLEVEL为1 返回值很正常

在批处理里执行
@echo off
@for /f "tokens=*" %%a in ('dir /b /ad /s c:\a^|sort /r') do (
@rd "%%a" /q  |findstr 目录不是空的。
@echo %errorlevel%
)
无论如何返回值都为0  这是怎么回事

高手回答下  小弟谢过
作者: Climbing     时间: 2008-2-27 10:02
启用延迟环境变量扩展并使用 !errorlevel!来代替%errorlevel%试试。
作者: mggdx     时间: 2008-2-28 01:23
我试一试  谢谢你了
作者: mggdx     时间: 2008-2-28 01:26
高人啊

一下就解决我的问题了。。
作者: mggdx     时间: 2008-2-28 01:27
还是不对啊


这次不管怎么样都是1呀

请再指教