Предположим, у меня есть следующий пакетный файл с именем openPS.bat
:
@echo off
SET psFile="%1"
Powershell.exe -ExecutionPolicy ByPass -File %psFile% %2 %3 %4 %5
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!
Этот пакетный файл используется для запуска сценария powershell в консоли CMD:
C:> openPS.bat script.ps1
script.ps1 запускается несколько раз оберткой, поэтому при каждом успешном выполнении он выдает exit code 0
Могу ли я как-то игнорировать эту строку в openPS.bat через powershell?
EXIT /B %ErrorLevel%
:end
echo Exit Code: %ERRORLEVEL%
echo Success!
я знаю, что могу REM
, но мне нужно вывести одно сообщение об успехе после всехциклы script.ps1 завершены.поэтому он должен остаться, и я не нашел способа подавить все эти коды выхода 0.если я использую out-null
в сценарии powershell, я теряю все остальные выходные данные, поэтому out-null
не вариант.