在我用 C# 编写的 powershell cmdlet 中,我需要获取调用我的脚本的名称。
我从 PSCmdlet 派生了我的 cmdlet 类;在运行时有大量信息附加到这个类,但我看不到在哪里可以获得我正在寻找的信息。
是否可以获取脚本名称?如果有,它住在哪里?
在我用 C# 编写的 powershell cmdlet 中,我需要获取调用我的脚本的名称。
我从 PSCmdlet 派生了我的 cmdlet 类;在运行时有大量信息附加到这个类,但我看不到在哪里可以获得我正在寻找的信息。
是否可以获取脚本名称?如果有,它住在哪里?
自动变量 $MyInvocation 应该在 InvocationName 属性中包含脚本的名称。
谢谢,mjolinor ......让我走上了正确的道路。
MyInvocation.InvocationName
为您提供调用 cmdlet 的命令的名称,但调用脚本名称就在附近...
我在这里找到了我想要的东西(从 PSCmdlet 派生类中):
var callingScript = MyInvocation.ScriptName;
它包含调用 cmdlet 的脚本的完整路径。