2013-07-19 5 views
0

Как использовать командлет PowerShell для запуска процесса с использованием его полной командной строки (с исполняемым путем и аргументами). Например, позвольте мне указать следующую строку:Использование Start-Process для запуска процесса с полной командной строкой

"<dir_path>/myprog.exe" -arg1 "val1" -arg2 "val2" 

хранится на некоторой строковой переменной и вы хотите запустить ее через Start-Process.

Я знаю, что Start-Process -FilePath '<dir_path>/myprog.exe' -ArgumentList '-arg1 "val1" -arg2 "val2"' будет работать. Но дело в том, что я не знаю, как получить путь и аргументы исполняемого файла из полной командной строки.

Итак, есть ли способ запустить процесс, используя его полную командную строку через Start-Process, или если такого пути нет, то как я могу получить путь к файлу и список аргументов из командной строки?

ответ

0

Нужно ли начать процесс? Вы можете напрямую вызвать исполняемый файл?

& "C:\Dir 1\Dir 2\executable.exe" -arg1 "value 1" -arg2 "value 2" 

См помощь about_Operators и для получения информации о & (вызова) оператора.

Билл

0

Есть ли какой-то причине у вас есть сердце установить на Start-Process? Если нет, то вы можете сделать это:

Invoke-Expression "& $command" 

где $ команда это переменная, которая хранит всю командную строку.

Смежные вопросы