Я хочу сохранить абсолютный путь к файлу в переменной оболочки мощности и использовать его для выполнения программы с аргументами. Я хочу сделать это на сервере сборки, чтобы у меня была утилита на этом сервере сборки, используемая агентами сборки. Учти это:
$pathToExe = «C:pathtoprogram.exe» #build server does stuff in a working dir $pathToExe arg1 arg2
Когда это выполняется, $ pathToExe не расширяется до своего значения. Вместо этого я вижу в журналах: «Неожиданный токен ‘arg1’ в выражении или инструкции».
Как правильно делать такие вещи в Power Shell? Я пробовал другой синтаксис с кавычками, но я не могу заставить его работать без жесткого кодирования пути к файлу, чего я пытаюсь избежать.
Я думаю, вам нужно будет использовать Start-Process — person Sly_Boots schedule 10.10.2018
Как же так? Нравится? Start-Process $ pathToExe arg1 arg2 — person Sly_Boots schedule 10.10.2018
Вот пример того, что я использую в настоящее время. Я жестко запрограммировал свои аргументы, но можно использовать переменные. Start-Process -FilePath ($Firefox + «Firefox_62.exe») -ArgumentList («-ms /INI=$Firefox» + «Firefox_Settings.ini») -Verbose -Wait -NoNewWindow — person Sly_Boots schedule 10.10.2018
Источник: