Visual Studio Code Powershell 扩展在调试时无法识别配置文件

rri*_*wer 2 powershell visual-studio-code

我使用PowerShell的扩展Visual Studio代码。我更新了个人资料:

C:\Users\xxxxxxxx\Documents\WindowsPowerShell\Microsoft.VSCode_profile.ps1

包含一些我想让其他脚本使用的函数和变量。当我从另一个脚本中的配置文件中引用变量时,似乎没有加载配置文件。我怀疑这是因为当我从 VS Code 控制台查询时变量值为空。如果我从具有关联配置文件的标准 Powershell 控制台运行相同的测试,则解析变量值。

谁能告诉我在调试时我需要做什么才能在 VS Code 中使用 Powershell 配置文件?

Dom*_*nin 6

有几个配置文件。起点是您可以通过阅读 PowerShell 内置$profile变量的以下属性找到的四个位置。

$profile.CurrentUserAllHosts
$profile.CurrentUserCurrentHost
$profile.AllUsersCurrentHost
$profile.AllUsersAllHosts
Run Code Online (Sandbox Code Playgroud)

正如脚本专家这篇文章中所指出的,因为 Windows 同时具有 Powershell 和 Powershell ISE,您至少有两个可能的当前主机值,因此至少有 6 个配置文件。

我已经在 Visual Studio Code 终端窗口中对此进行了测试,看起来“CurrentHost”配置文件与您通过简单运行 powershell 实例获得的相同。我假设 Code 不被视为一个独特的主机,而只是运行一个普通的 powershell。一旦你做到了这一点,还有另一个可能的复杂情况,那就是AllUsers配置文件在C:\Windows\System3264 位系统上,因此在C:\Windows\SysWOW64\. 因此,根据您使用的是 32 位编辑器还是 64 位编辑器,以及 Powershell 是托管在 32 位还是 64 位进程中,您正在编辑的文件很可能对 Powershell 没有影响。


Raf*_*Raf 5

在调试会话中运行$profile:这将返回当前使用的配置文件的路径,以便您可以在那里进行更改。

或者,您可以更改系统范围的配置文件C:\Windows\System32\WindowsPowerShell\v1.0\profile.ps1