通过String在PowerShell中调用函数

时间:2011-07-27 16:29:52

标签: function powershell powershell-v2.0

我正在尝试使用字符串“动态”调用Powershell函数。实施例

$functionToInvoke = "MyFunctionName";

Invoke-Function $functionToInvoke $arg1 $arg2  #  <- what I would like to do

有没有办法用PowerShell 2.0实现这个目标?

2 个答案:

答案 0 :(得分:29)

你可以这样做:

 &"MyFunctionName" $arg1 $arg2

答案 1 :(得分:11)

如果你想改变这个白痴的事情:

function myfunctionname {write-host "$($args[0]) $($args[1])"}
$arg1 = "scripts"
$arg2 = "test"

$functionToInvoke = "MyFunctionName";


invoke-expression  "$functionToInvoke $arg1 $arg2"

scripts test