Хотя технически возможно * использовать таблицу ha sh для разделения с внешними программами, она редко будет работать так, как задумано. [1]
Вместо этого используйте массив :
$splatting_array =
'-parameter', 'value',
'-parameter2', 'value2'
.\external-command.exe @splatting_array
Обратите внимание, что $splatting_array
- это просто плоский массив - отформатированный для удобства чтения в парах элементов - элементы которого PowerShell передает как отдельные аргументы.
[1] При использовании ha sh табличного сплаттинга not включает символ -
в именах ключей (например, использовать parameter
, а не
-parameter
); кроме того, PowerShell объединит ваши записи с :
при создании командной строки для внешней программы, которую поддерживают немногие программы; например, запись sh в таблице parameter = 'value'
означает
-parameter:value
.