用字符串变量替换 PowerShell 文字操作/回调函数引用?

用字符串变量替换 PowerShell 文字操作/回调函数引用?

如果我有一个 powershell 命令......

$theEvent=Register-ObjectEvent -InputObject $theWatcher -EventName EventRecordWritten -SourceIdentifier $theId -Action { OnEvent $($args[$ONE]) }

其中“OnEvent”是定义的函数,上述工作原理是,当事件触发动作设置时调用回调传递一个参数。

但是,我需要传递一个带有定义函数名称的字符串变量,执行以下操作......

$theAction="OnEvent"    
$theEvent=Register-ObjectEvent -InputObject $theWatcher -EventName EventRecordWritten -SourceIdentifier $theId -Action { $theAction $($args[$ONE]) }

如何做到这一点?显然,“{”和“}”正在创建一个代码脚本块,但不确定如何获取这些代码来评估“$theAction”字符串并用函数指针替换所述变量?指向 OnEvent 函数?

相关内容