如何获取我执行的PowerShell脚本的目录?

时间:2013-07-04 03:05:54

标签: powershell

我运行PowerShell脚本。如何获取我运行的此脚本的目录路径?

怎么做?

1 个答案:

答案 0 :(得分:131)

PowerShell 3有$PSScriptRoot automatic variable

  

包含运行脚本的目录。

     

在Windows PowerShell 2.0中,此变量仅在脚本模块(.psm1)中有效。从Windows PowerShell 3.0开始,它在所有脚本中都有效。

不要被糟糕的措辞所迷惑。 PSScriptRoot是当前文件的目录。

在PowerShell 2中,您可以自己计算$PSScriptRoot的值:

# PowerShell v2
$PSScriptRoot = Split-Path -Parent -Path $MyInvocation.MyCommand.Definition