假设我们要在Windows中使用以下命令创建一个空文件:
type nul > C:\does\not\exist\file.txt
该目录不存在,所以我们得到错误:
The system cannot find the path specified
如果打印出%errorlevel%,输出为:
echo %errorlevel% 0
然而命令不成功!
我注意到,如果您使用重定向,则Windows不会设置上一个命令的%errorlevel%。
有没有解决的办法?
您可以使用以下内容
原文链接:https://www.f2er.com/windows/372783.htmlC:\>type nul > C:\does\not\exist\file.txt && echo ok || echo fail The system cannot find the path specified. fail C:\>echo %errorlevel% 1
我一直以为&&和||运算符使用ERRORLEVEL,但不可见。
非常好奇,只有当您使用||时,才会在重定向错误后设置ERRORLEVEL操作符。我从来没有猜到如果不是你的优秀问题,我也不会打扰测试。
如果您想要做的是在重定向失败时设置ERRORLEVEL,那么您当然可以简单地做:
type nul > C:\does\not\exist\file.txt || rem