powershell - используйте функцию с неизвестным количеством переменных и других параметров - PullRequest
4 голосов
/ 01 марта 2011

Мне нужно создать функцию. Первая переменная должна быть массивом с неизвестным количеством параметров плюс другая переменная. Моя проблема в том, что я не знаю, как их различить.

выкладываю пример:

function conc-str {
param([string[]]$array,[string]$name)
foreach($item in $array) {
$str+= $item
}
write-host $str
}

conc-str(@("aa","bb","cc"),"dd") 

Результат этой функции:

aa bb ccdd

но, как вы видите, я зацикливаю элементы массива и объединяю их. Я думал, чтобы получить только

aa bb cc

Где моя ошибка?

1 Ответ

7 голосов
/ 01 марта 2011

Как вы называете это:

conc-str @("aa","bb","cc") "dd"

Вы не используете "," в качестве разделителя параметров в PowerShell. Это просто пространство. В тот момент, когда вы вводите «,», он становится единственным параметром.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...