- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在学习 Windows 批处理脚本。当复制、移动或删除操作失败时,我需要提出错误。我制作了一个示例脚本,由于某种原因,当操作失败时,我无法让 ERRORLEVEL 上升。我运行脚本,文件不存在或在另一个程序中打开,stderr 消息输出到控制台,但 ERRORLEVEL 从未上升,这是为什么?另外,如果我无法让 ERRORLEVEL 上升,有没有什么方法可以将 stderr 传递到我可以检查的变量中?
我的代码如下:
`@Echo Off
ECHO.
Set /P myVar=Please enter a value:
Echo var = %myVar%
ECHO Trying to delete the file dummy.csv >> log.txt
Set myVar2 = nothing
DEL C:\dummy420.csv
IF NOT ERRORLEVEL 0 ECHO There was an error
ECHO %ERRORLEVEL%
REM 2>myVar2
REM Echo 2>
REM Echo %myVar2%
Echo 2>&1
REM && (echo yourCommand was successful) || (echo yourCommand failed)
IF NOT ERRORLEVEL 0 ECHO There was an error
ECHO %ERRORLEVEL%
Move ""C:\dummy420.csv" D:\"
IF NOT ERRORLEVEL 0 ECHO There was an error
Set /P dummy=Press Enter to End`
这是我的输出:
Please enter a value:hello
var = hello
C:\dummy420.csv
The process cannot access the file because it is being used by another process.
0
ECHO is off.
0
The filename, directory name, or volume label syntax is incorrect.
Press Enter to End
最佳答案
DEL
命令不会更改错误级别 - more info检查 debenham 建议以检测删除失败:
3>&2 2>&1 1>&3 del C:\dummy420.csv|findstr . && echo DEL failed || echo DEL succeeded
更改错误级别:
3>&2 2>&1 1>&3 del C:\dummy420.csv|findstr .&& cmd /c exit /b 1
关于batch-file - 批处理脚本在失败时不提高 ERRORLEVEL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31077490/
登录Desktop Rstudio后,会出现以下消息: Error in yaml.load(readLines(con), error.label = error.label, ...) : o
在 cmd.exe 中运行 MS DOS 命令后,我使用 echo %ERRORLEVEL% 检查退出代码。不过我想在运行这个之前我应该清除变量:%ERRORLEVEL%。 我说得对吗?另外如何清
我想读取Java中cmd命令的返回码。为此,我使用了: Runtime.exec("echo %errorlevel%") 但不是回显错误代码,而是回显 %errorlevel%。 最佳答案 不知道你
我有一个嵌套的批处理脚本,我希望它的错误代码渗透到调用它的主批处理脚本。我试过了 exit /b %errorlevel% 但是变量没有返回。调用的批处理脚本中的 ECHO'ing %errorlev
我正在尝试以下命令并希望退出我的process(%ERRORLEVEL%)。但它返回 previous(last) 执行 sample.exe 的退出代码结果。我想获取当前命令的退出代码。我的要求是在
在启动 Jmeter 时,出现以下错误: VM 初始化期间发生错误无法为对象堆保留足够的空间 errorlevel=1。 请帮我解决这个问题。我使用的是 4GB RAM、64 位操作系统、intel
我正在学习 Windows 批处理脚本。当复制、移动或删除操作失败时,我需要提出错误。我制作了一个示例脚本,由于某种原因,当操作失败时,我无法让 ERRORLEVEL 上升。我运行脚本,文件不存在或在
我正在使用 Windows 批处理文件比较来自 2 个文件夹的文件列表。它打印结果,无论是通过还是失败。 当前工作批处理文件: for /F "tokens=*" %%f in (list.txt)
刚刚用 %ERRORLEVEL% 偶然发现了一件奇怪的事情并想看看是否有人知道原因以及是否有办法解决它。本质上,似乎在 if 语句中执行的命令没有设置 %ERRORLEVEL%多变的。 ERRORLE
由于 ERRORLEVEL 是一个环境变量,所以在我有机会在我的批处理文件中检查它之前,是否可以更改它的值? 最佳答案 环境变量属于当前“进程”,因此无法从外部更改它们。如果您在批处理文件中的相关命令
我试图找到一种方法来查看主机是否在 Windows 的 C 中处于事件状态,因此我使用 ping 命令运行系统,然后运行系统检查 %ERRORLEVEL% 但它始终显示 0,即使主机无法访问也是如此.
在命令提示符下,试试这个: powershell aaa echo ErrorLevel is %errorlevel% Powershell 将失败(出现错误)。您还会看到“ErrorLevel i
假设我们想使用以下命令在 Windows 中创建一个空文件: type nul > C:\does\not\exist\file.txt 目录不存在,所以报错: The system cannot f
我有一个为 C# 项目运行一些命令的构建后事件。最后一个命令有时会导致 ERRORLEVEL 值不等于零,然后构建失败。 我想附加一行额外的命令以始终将 ERRORLEVEL 值设置为零。最方便的方法
我的 Windows 机器桌面上有一个最小的批处理脚本,它使用 FC.exe 工具,用于比较我桌面上的两个文本文件。 我要比较的文件 file1.txt 包含一个字符 a file2.txt 包含一个
我想使用“wmic”命令来确定特定的 java 进程是否仍在运行。 例如> wmic 进程,其中“commandLine like '%ACTMonitor%' and executablePath
我试图从作为 QProcess 运行的 Windows 命令行应用程序中捕获特定的错误代码。 我今天有一个错误,应用程序失败: 在命令行上运行时: echo %errorleve% 返回 14001
我们有一个程序偶尔会崩溃。客户从计划任务运行程序。当程序以特定参数运行时,程序作为接口(interface)引擎运行,创建一个文件,然后将该文件ftp'到另一个服务器以供另一个程序导入。 我想知道我是
Windows shell 有一个 %ERRORLEVEL% 变量,可用于查找已通过 shell 运行的进程的退出代码。因此,我可以在 .bat 文件中使用它来获取我从 .bat 文件中调用的外部脚本
我想知道是否可以从 Ant build xml 中的批处理文件获取返回值。 我的批处理文件返回 %ERRORLEVEL% 值(在我的情况下,批处理文件返回 2)。我想知道是否可以捕获此问题并在 Ant
我是一名优秀的程序员,十分优秀!