4

如何将 Powershell 脚本的工作目录设置为存在与脚本相同的目录,以便无论您从哪个目录调用它,它都会始终在脚本的根目录中查找文件?

例如,如果您调用 foo.ps1 如下:

c:> d:\MyScript\foo.ps1

foo.ps1 会将工作目录设置为 d:\MyScript\,这样当它 - 例如 - 查找配置文件时,它不会在 C:\ 中搜索它,而是在 d:\MyScript\

4

1 回答 1

6

使用以下代码检索脚本文件夹的路径:

Split-Path $MyInvocation.MyCommand.Path

您可以Set-Location (Split-Path $MyInvocation.MyCommand.Path)在脚本的开头使用,也可以Push-Location (Split-Path $MyInvocation.MyCommand.Path)在脚本的开头和Pop-Location结尾使用。

于 2013-06-14T13:49:57.350 回答