Я пытаюсь запустить задание в фоновом режиме, который является .exe с параметрами, и место назначения имеет пробелы. Например:Справочная работа в Powershell
$exec = "C:\Program Files\foo.exe"
, и я хочу, чтобы запустить это с параметрами:
foo.exe /param1 /param2, etc.
Я знаю, что Start-Job
делает это, но я пытался тонны различных комбинаций и он либо дает мне ошибку из-за пробел или из-за параметров. Может ли кто-нибудь помочь мне с синтаксисом здесь? Мне нужно предположить, что $exec
- это путь исполняемого файла, поскольку он является частью файла конфигурации и может впоследствии измениться.
Спасибо за помощь! Что означает 2> & 1? – Brian
@Brian Ah да, что перенаправит стандартный поток ошибок (2) в стандартный поток (1). Это гарантирует, что вы получите весь текст из исполняемого файла из командлета «Получить-Job».Обычно то, что я делаю в фоновом задании, это захват вывода исполняемого '$ out = xcopy $ a $ b 2> & 1', а затем проверить, не является ли код выхода (' $ LASTEXITCODE') ненулевым, и если это так бросает захваченный текст как сообщение об исключении: 'throw $ out'. –