如何确定调用我的cmdlet的脚本的名称?

时间:2014-05-07 21:46:57

标签: c# powershell cmdlets pscmdlet

在我用C#编写的powershell cmdlet中,我需要获取调用我的脚本的名称。

我从PSCmdlet派生了我的cmdlet类;在运行时有大量的信息附加到这个类,但我没有看到我在哪里可以获得我正在寻找的信息。

是否可以获取脚本名称?如果是的话,它住在哪里?

2 个答案:

答案 0 :(得分:2)

自动变量$ MyInvocation应包含InvocationName属性中脚本的名称。

答案 1 :(得分:0)

谢谢,mjolinor ......让我走上了正确的道路。

MyInvocation.InvocationName为您提供了在其下调用cmdlet的命令的名称,但调用脚本名称正好靠近...

我在这里找到了我想要的东西(来自PSCmdlet派生类):

var callingScript = MyInvocation.ScriptName;

它包含调用cmdlet的脚本的完整路径。