批处理命令退出

时间:2014-04-14 03:16:38

标签: batch-file exit

我必须将旧的批处理文件重写为Powershell脚本。

一行是

directory1\nunit-console.exe file1.dll /xml:results.xml


exit %%ERRORLEVEL%%

我对"exit %%ERRORLEVEL%%"

感到有点困惑

通常,只需输入命令行>>exit并输入即可。它将关闭屏幕。

%%ERRORLEVEL%%位是什么意思?

感谢

1 个答案:

答案 0 :(得分:0)

在“DOS”shell(即COMMAND.COM,CMD.EXE)中,变量定义为%VAR%%ERRORLEVEL%表示最后执行的命令的返回值;它就像Bash或Perl中的$?

在这种情况下,exit %%ERRORLEVEL%%似乎是尝试使用调用nunit-console.exe的返回值退出批处理脚本。 (这个脚本看起来很旧,因为在MS-DOS和Windows 2000及更高版本中的后一个shell之间,exit和双百分号符号的需求略有变化。)

有关如何在各种shell版本中使用exit的讨论,请参阅this page

This MS KB article讨论在批处理文件中使用%字符。它是为MS-DOS编写的,但大多数相同的原则适用于后来的shell。