【问题标题】:Specify exit code in batch exit批量退出指定退出码
【发布时间】:2014-01-24 17:37:01
【问题描述】:

当批处理脚本在 if exists 子句上成功退出时,我需要在我的批处理脚本中指定我自己的退出代码。您会注意到,我将其指定为exit 5,我也尝试过exit /b 5,但没有任何效果。有什么建议吗?

@ECHO OFF
CLS

set SOURCE_PARENT=%1
set FOLDER=%2
set TARGET_FILE=%3

net use S: %SOURCE_PARENT% 
net use T: %TARGET_FILE%

if exist T:\%FOLDER% (
  echo Folder exists, process exiting
  net use S: /Delete /y
  net use T: /Delete /y
  exit 5
) else (
  mkdir T:\%FOLDER%
)

xcopy S:\%FOLDER% T:\%FOLDER% /E /I /H

net use S: /Delete /y
net use T: /Delete /y

exit

【问题讨论】:

  • 为什么你认为它不起作用?调用脚本后是否尝试检查错误级别?
  • 它必须是exit /b 5。如何调用iy?来自另一批?
  • 我已将退出代码返回给调用它的 java。在调试中,退出代码仍然是 0
  • 向我们展示您如何从 Java 代码中调用它。
  • 那跟java比较相关,不是batch...

标签: batch-file exit-code


【解决方案1】:

如果你有一个脚本 script.bat 包含:

@echo off
echo Hello from script.
exit /b 5

在命令提示符下或从另一个脚本调用

test.bat
echo %errorlevel%

它应该显示:

C:\Temp>script.bat

来自脚本的问候。

C:\Temp>echo %errorlevel%

5

【讨论】:

猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2014-10-21
  • 2023-03-12
  • 2019-10-15
  • 1970-01-01
  • 2016-08-11
  • 2013-08-17
  • 1970-01-01
相关资源
最近更新 更多