gpt4 book ai didi

batch-file - MS-DOS内置命令是否返回错误\退出代码?

转载 作者:行者123 更新时间:2023-12-04 04:53:53 26 4
gpt4 key购买 nike

我没有找到一种方法来获取rmdir的错误代码(如果返回)。似乎MS-DOS内部命令不会返回错误代码。有人可以确认吗?

使用这些命令的脚本如何知道命令是成功还是失败,以便决定下一步?最简单的方法是读取其返回代码(如果已返回)。

提前致谢。

最佳答案

不,看来不是。如果在成功或失败的echo %errorlevel%之后添加了rmdir,则在两种情况下都将获得0:

c:\pax> mkdir qqq
c:\pax> rmdir qqq
c:\pax> echo %errorlevel%
0
c:\pax> rmdir qqq
The system cannot find the file specified.
c:\pax> echo %errorlevel%
0

对于该特定用例,最好在之后检查目录是否存在:
if exist dodgy\. rmdir dodgy
if exist dodgy\. echo dodgy directory still exists

有趣的是,如果调用单独的 cmd.exe副本执行操作,则会得到错误级别:
c:\pax> mkdir qqq
c:\pax> cmd /c rmdir qqq
c:\pax> echo %errorlevel%
0
c:\pax> cmd /c rmdir qqq
The system cannot find the file specified.
c:\pax> echo %errorlevel%
2

但是,我不认为这比删除目录后检查目录是否消失要好,因为它要求您启动一个全新的命令解释器。

关于batch-file - MS-DOS内置命令是否返回错误\退出代码?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6500314/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com