Powershell - вызов строки выбора с параметрами из аргументов скрипта - PullRequest
0 голосов
/ 05 марта 2011

У меня есть простой скрипт для вызова select-string для определенного расширения файла. Я хочу дополнительно предоставить другие параметры строки выбора через аргументы сценария.

мой скрипт findm.ps1

# simplified version to show error
select-string *.m -pattern $args[0] $args[1]

когда я печатаю findm.ps1 someFileName -List

Я получаю следующую ошибку

Select-String : A positional parameter cannot be found that accepts argument '-List'.

набрав следующую строку, строка cmd работает нормально

select-string *.m -pattern "someFileName" -List

Заранее спасибо

JRA

Ответы [ 2 ]

0 голосов
/ 05 марта 2011

Синтаксический анализатор интерпретирует -List как строку (не аргумент), которую необходимо связать с аргументом.

Майк был близок, но вам нужно повторно проанализировать его как выражение powershellпосле того, как вы создадите свою командную строку следующим образом:

invoke-expression "select-string *.m -pattern $($args[0]) $($args[1])"
0 голосов
/ 05 марта 2011

Попробуйте это:

& "select-string *.m -pattern $($args[0]) $($args[1])"
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...