所以假设我在 C:\scripts\MyScript.ps1 有一个脚本,它很简单:
Get-Content ".\text.txt"
在 C:\scripts 中,我还有一个文件 text.txt,其中包含调用脚本时打印的任意文本。如果我在 PowerShell 的当前目录为 C:\scripts 时使用此脚本,它可以正常工作。但是,如果 PowerShell 当前位于不同的目录中,例如 C:\otherFolder,则因此从 PoSh 命令窗口调用脚本会失败:
PS C:\otherFolder> ..\scripts\MyScript.ps1
这是我所期望的,因为脚本中对 text.txt 的引用是相对的,并且该文件不存在于 C:\otherFolder 中。我的问题是,有没有办法编写一个脚本,它具有对其他文件的相对引用,即使从不同的文件夹中调用,它仍然可以按预期工作?
我意识到如果脚本引用“C:\scripts\text.txt”不会有问题,但我希望能够移动脚本(及其依赖文件)而无需更新每次的脚本。
谢谢。