我想创建一些函数名称的数组,然后根据传递给我的脚本的参数调用这些数组。这可能吗?在下面的粗略示例中,如果我将2
作为参数传递给脚本,我希望$twoFuncs
函数列表按照的顺序被称为。在数组中调用一组函数
param ($whichFuncs)
Function a{ Write-Host "Executing function a" }
Function b{ Write-Host "Executing function b" }
Function c {Write-Host "Executing function c" }
$twoFuncs = @("a","b")
$threeFuncs = @("c","b","a")
if($whichFuncs -eq 2)
{
# execute functions a + b
}
我总是建议避免Invoke-Expression。调用操作符在这里完美工作,如果函数带参数,Invoke-Expression将变得杂乱无章。 –
我知道,这就是为什么我发布我的答案后,迅速添加了呼叫运营商。 :)现在通过删除'iex'使其更加清晰,尽管我通常喜欢展示多种方法。 –
@FrodeF。 +1多种方法:) –