从命令提示符调用PowerShell脚本时,当前目录会更改

从命令提示符调用PowerShell脚本时,当前目录会更改,powershell,Powershell,我有一个PowerShell脚本,其中包含一个命令: pwd 当我从(Windows 10)命令行窗口执行它时,我得到以下结果: d:\Hudson_Test\workspace\CadGraphics>echo %cd% d:\Hudson_Test\workspace\CadGraphics d:\Hudson_Test\workspace\CadGraphics>powershell -file ShowLocation.ps1 Path ---- D:\hudson_t

我有一个PowerShell脚本,其中包含一个命令:

pwd
当我从(Windows 10)命令行窗口执行它时,我得到以下结果:

d:\Hudson_Test\workspace\CadGraphics>echo %cd%
d:\Hudson_Test\workspace\CadGraphics

d:\Hudson_Test\workspace\CadGraphics>powershell -file ShowLocation.ps1

Path
----
D:\hudson_test\workspace
如您所见,当前目录在PowerShell脚本中向上移动一个目录(从d:\hudson\u test\workspace\CadGraphics到d:\hudson\u test\workspace)

我在另一台(Win10)机器上测试了这一点,在那台机器上,两条路径是相同的


这里发生了什么,我怎样才能阻止它发生?

除非配置文件每次都加载它,否则不应该这样做。请试一下

powershell-NoProfile-File FileName.ps1


其次,我希望您将其存储在一个变量中,并查看write host的结果

您有配置文件吗<代码>记事本$profile检查。听起来您有一个配置文件正在设置位置。您可以启动powershell,而无需使用
powershell-NoProfile-File ShowLocation.ps1执行配置文件。即使在Windows 10上,我也无法重现此问题。是的,是配置文件导致了此问题。使用-NoProfile标志启动powershell修复了我的问题。是的。它正在加载一个配置文件,该配置文件正在设置其目录。@PortMan:Great:很高兴提供帮助