在Powershell中获取脚本名称

时间:2012-02-01 11:00:15

标签: powershell

除了powershell中的$ MyInvocation.InvocationName以获取脚本名称之外还有其他方法吗? 因为我需要在exe中转换我的脚本,在这种情况下它不能在那个exe上工作。

2 个答案:

答案 0 :(得分:11)

我假设您将powershell脚本转换为可执行文件位置之后的可执行文件。你可以这样得到它:

[Environment]::GetCommandLineArgs()[0]

答案 1 :(得分:1)

如果您想在ISE内外工作,可以使用

$MyInvocation.InvocationName

由于可以返回完整路径和。\ YourScript.ps1,因此您可以使用以下命令解析名称:

[Regex]::Match( $MyInvocation.InvocationName, '[^\\]+\Z', [System.Text.RegularExpressions.RegexOptions]::IgnoreCase -bor [System.Text.RegularExpressions.RegexOptions]::SingleLine ).Value