首页 > 解决方案 > 如何抑制退出状态回声?

问题描述

我有一个批处理文件,它调用一个 powershell 脚本,该脚本再次调用同一个批处理文件,该批处理文件调用一个不同的 powershell 脚本

流程是:runPowerShell.bat > scriptWrapper.ps1 > runPowerShell.bat > Process.ps1

批处理文件包含 Process.ps1 退出代码的回显。

    if %errorlevel% NEQ 0 GOTO :error
GOTO :end
:error
echo Exit Code: %ERRORLEVEL%
echo Failed!

EXIT /B %ErrorLevel%
:end
echo Exit Code: %ERRORLEVEL%
echo Success!

问题是,由于 scriptWrapper 也成功运行,即使我在 scriptWrapper.ps1 文件中没有退出代码,它似乎也传回了成功。所以基本上我最终得到了两条成功消息,而不仅仅是我想要的来自 Process.ps1 的一条。

Exit Code: 0
Success!
Exit Code: 0
Success!

那么有没有办法将 runPowerShell.bat 中的回显抑制为仅从 Process.ps1 回显?

我可以创建另一个批处理文件来处理这种情况,但我想看看是否有一个选项不必首先在此处涉及另一个批处理文件。

标签: powershellbatch-file

解决方案


推荐阅读