问题标签 [errorlevel]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
windows - 在 DOS 中查看命令返回码的最佳方法
有时我会运行以下命令cmd
:
并希望看到 fc 的返回码。有没有一种简单的方法可以做到这一点?
java - System.exit(num) 还是从 main 抛出 RuntimeException?
我有一个单线程应用程序,如果出现问题,应该将 DOS 错误级别设置为非零值。是抛出 RuntimeException 还是使用 System.exit(nonzero) 更好?我不需要堆栈跟踪,也不希望这个应用程序被扩展/重用。这两个选项有什么区别?
batch-file - Batch ERRORLEVEL 结果与 CMD 不同?
为什么 ERRORLEVEL 在这两种情况下表现不同?
从命令行:
与批处理文件相比:
结果:
windows - For 循环中的错误级别(批处理窗口)
我有以下 Windows 批处理代码:
但它不像我预期的那样工作。
所有进程的名称iidbms,iigcc,iigcd,dmfacp,dmfrcp,rmcmd是真实的,它们被发现,而不是qwerty是一个发明的,不应该找到它,所以应该打印"no process found 1",但它没有,它总是打印 0。
但我注意到的是,如果我tasklist | findstr /i qwerty
从 dos 提示符运行,就在%errorlevel%
= 1 之后。
什么样的答案可能是或更好的是?
scripting - 从 plink 获取返回码?
在 DOS 批处理脚本中,我使用 plink 在远程(也是 Windows)计算机上运行单个命令。以前,该命令只在本地机器上运行,并依靠返回码来确定成功。有没有办法通过 plink 轻松获取这些信息?
windows - 回显(创建)错误日志文件
我有以下几行命令:
如果 %errorlevel% equ 1 (
但是像这样我得到了文件正在被另一个进程处理的消息。
如果不存在而不是使用 Echo,可能还有另一种创建文件的方法。
batch-file - IF 内的 ERRORLEVEL
只是偶然发现了一件奇怪的事情,%ERRORLEVEL%
想看看是否有人知道为什么以及是否有办法解决它。从本质上讲,似乎在 if 语句中执行的命令没有设置%ERRORLEVEL%
变量。(ERRORLEVEL
如IF ERRORLEVEL 1
,与 不同IF %ERRORLEVEL% EQU 1
)检查似乎仍然可以正常工作,所以我可能可以解决它,但能够打印错误级别仍然很好。用于调试或其他什么。
将其放入批处理文件并运行它会产生以下输出:
C:\Users\username\Documents\work>test.bat
OUTSIDE_IF 1
'ThisWillSetErrorLevelTo9009ieNotRecognizedCommand' 未被识别为内部或外部命令、可运行程序或批处理文件。
OUTSIDE_IF 1
'ThisWillSetErrorLevelTo9009ieNotRecognizedCommand' 未被识别为内部或外部命令、可运行程序或批处理文件。
INSIDE_IF ERRORLEVEL 9009
INSIDE_IF2 ERRORLEVEL GREQ 1 9009
OUTSIDE_IF ERRORLEVEL 1
相关文章:
monitoring - 使危险程度显而易见
我正在开发一个监控系统:它发送消息,每条消息都有一个危险/严重性标志,我希望它对于普通用户来说也非常明显。以下哪项具有明显的含义,并且是否有可能命名一个级别名称序列,这些名称绝对意味着每个理智的计算机文字人类的危险等级(即对于给定的(A,B,C,D,... ) 任何人都会立即认识到 A 的危险性低于 B,B 的危险性低于 C,C < D 等)。
我已经看到了几个可能的危险等级等级,但我不确定对于普通用户来说有多明显:
- 好的
- 信息
- 警告
- 错误
- 失败
- 批判的
- 致命的
- 墓穴
对于世界上的每个用户来说,哪个严重性/危险级别的顺序最明显?例如,对于每个人来说,CRITICAL 比 ERROR 更严重是不是很明显?
windows - 使用 `EXIT /BX` 退出批处理,其中 X>=1 在使用 && 或 || 时就像命令成功完成一样 批处理调用之间的运算符
我正在尝试使用命令链接一系列 .bat 文件EXIT /B X
以返回成功或失败以及&&
有条件||
地运行下一个 .bat (例如a.bat && b.bat
)。
不管我是否调用EXIT /B 0
或以其他方式结束 a.bat,a.bat && b.bat
之后都会调用 b.bat。我的理解是EXIT /B 0
应该设置ERRORLEVEL=0
,即成功,所以&&
应该继续。与此相反的是,调用EXIT /B 1
应该设置ERRORLEVEL=1
为失败,因此&&
应该停止。我在这里想念什么?
琐碎的例子:
对于非批处理命令,按预期执行:
使用EXIT /B
总是将 a.bat 视为成功:
我怎样才能退出 a.bat 以便a.bat && b.bat
按a.bat || b.bat
预期运行?
所有命令都在 Windows XP SP3 上的 cmd.exe 中运行。
nsis - 为什么即使 makensis.exe 有效,它也会返回错误级别 1?
我有一个有效的 NSIS 脚本。它编译,生成的安装程序工作正常。然而,makensis.exe 返回 1 而不是 0。这真的很痛苦,因为我在持续集成设置中使用它,现在我的 CI 认为构建失败。
当我将我的项目从 SVN 切换到 Git 并在 NSIS 脚本中做了一个微小的更改(我在两个地方更改了路径)时,这才刚刚开始。
- 我可以找到没有打印的编译错误(即使使用 /V4)。
- 有 6 个警告,但它们与 makensis 返回 0 的旧仓库中的 6 个相同。
- 我将先前的“errorlevel=0”输出与新的“errorlevel=1”输出进行了比较,发现没有显着差异。
- 它会生成一个运行良好的安装程序。
- 我仍在使用与 makensis.exe 完全相同的副本。
然而,它返回错误级别 1。
我确定几年前我遇到过这个问题,但我不记得我是如何解决的。我想我刚刚升级到最新版本的 NSIS,但这次我不能这样做(我已经在使用最新版本了)。