Ответ 1
cmd.exe /c '\my-app\my-file.bat'
Я не могу получить файл powershell script для непосредственного выполнения файла bat. Например, это работает в командной строке:
.\\my-app\my-fle.bat
Когда я добавляю эту команду в script, она выдает:
The term '.\\my-app\my-file.bat' is not recognized as the
name of a cmdlet, function, script file, or operable program.
Check the spelling of the name, or if a path was included,
verify that the path is correct and try again.
Я также пробовал следующее, с тем же результатом:
& .\\my-app\my-fle.bat
& ".\\my-app\my-fle.bat"
\my-app\my-fle.bat
& \my-app\my-fle.bat
& "\my-app\my-fle.bat"
Примечание. Он должен вернуть lastexitcode, поскольку мне нужно проверить успех пакета.
cmd.exe /c '\my-app\my-file.bat'
Чтобы запустить .bat и получить доступ к последнему коду выхода, запустите его как:
& .\my-app\my-fle.bat
Попробуйте, ваш источник точек был немного не в порядке. Редактировать, добавив биты lastexitcode для OP.
$A = Start-Process -FilePath .\my-app\my-fle.bat -Wait -passthru;$a.ExitCode
добавить -WindowStyle Hidden
для невидимой партии.