我想要创建一些函数名数组,然后根据传递给我的脚本的参数调用它们。这个是可能的吗?在下面的简单示例中,如果我将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
}
发布于 2014-01-25 09:38:59
您要寻找的是呼叫操作员&
和一个foreach-循环。
PS C:\Users\Frode> $twoFuncs | ForEach-Object { & $_ }
Executing function a
Executing function b
发布于 2014-01-25 07:36:20
用开关怎么样?
param ($whichFuncs)
Function a{ Write-Host "Executing function a" }
Function b{ Write-Host "Executing function b" }
Function c {Write-Host "Executing function c" }
switch ($whichFuncs)
{
2 {a;b}
3 {c;b;a}
}
https://stackoverflow.com/questions/21352321
复制