Я хочу вызвать существующий командлет с динамическим количеством параметров.
Поэтому вместо того, чтобы делать это (, взяв в качестве примера host -), я хотел бы сделать это умнее.
# these are the dynamic parameters which maybe get passed into my function or script
# they would be $null be default of course
$forecolor = 'Green'
$newline = $true
# now build the "dynamic" write-host...
if ($forecolor) {
if ($newline) {
write-host -fore $forecolor "Hello world"
}
else {
write-host -fore $forecolor "Hello world" -nonewline
}
}
else {
if ($newline) {
write-host "Hello world"
}
else {
write-host "Hello world" -nonewline
}
}
Это конечно очень некрасиво. Помогите мне сделать его красивее!
Я уже пробовал просто установить $forecolor = '-fore Green'
, который выводит только «-fore Green Hello world» . Я мог бы передать список аргументов функции и для каждого аргумента в списке добавить соответствующий параметр -. Я просто не знаю, как хранить параметры.