【发布时间】:2011-07-24 21:24:46
【问题描述】:
每当我需要引用一个通用模块或脚本时,我喜欢使用相对于当前脚本文件的路径。这样,我的脚本总能在库中找到其他脚本。
那么,确定当前脚本目录的最佳标准方法是什么?目前,我正在做:
$MyDir = [System.IO.Path]::GetDirectoryName($myInvocation.MyCommand.Definition)
我知道在模块 (.psm1) 中您可以使用 $PSScriptRoot 来获取此信息,但这不会在常规脚本(即 .ps1 文件)中设置。
获取当前 PowerShell 脚本文件位置的规范方法是什么?
【问题讨论】:
-
您的解决方案 $PSScriptRoot 是正确的,无需进一步阅读。