使用PowerShell 5.0
,有很多自定义选项。目前我已经创建了自己的配色方案。但我不知道如何永久设置这些颜色选项。
Set-PSReadlineOption -TokenKind Operator -ForegroundColor "Magenta"
Set-PSReadlineOption -TokenKind Command -ForegroundColor "DarkYellow"
Set-PSReadlineOption -TokenKind Parameter -ForegroundColor "Magenta"
现在我将这些命令保存在Profile
脚本中,以便它们可以自动加载,但是当重置 shell 并且我想加载另一个时,它并不在所有情况下都有效Profile
。无论配置文件如何,背景颜色和其他可用选项PowerShell UI
都保持一致。我想要同样的东西。
我如何永久设置这些颜色选项PowerShell Console
。
答案1
您可能在错误的配置文件中设置了颜色属性。
PowerShell 实际上有 6 个配置文件可供选择:
当前用户、当前主机 - 控制台:
$Home\[My ]Documents\WindowsPowerShell\Profile.ps1
当前用户、所有主机:$Home\[My ]Documents\Profile.ps1
所有用户,当前主机 - 控制台:$PsHome\Microsoft.PowerShell_profile.ps1
所有用户、所有主机:$PsHome\Profile.ps1
当前用户、当前主机 - ISE:$Home\[My ]Documents\WindowsPowerShell\Microsoft.PowerShellISE_profile.ps1
所有用户,当前主机 - ISE:$PsHome\Microsoft.PowerShellISE_profile.ps1
请尝试在所有用户、所有主机配置文件中设置配置文件颜色,看看设置是否持续。如果持续,请尝试以用户身份修改各种配置文件,以获得所需的配置。
有关 PowerShell 配置文件的更多阅读内容(此答案的来源)- 请参阅https://blogs.technet.microsoft.com/heyscriptingguy/2012/05/21/understanding-the-six-powershell-profiles/
答案2
对于现在阅读这篇文章的任何人来说,我发现我的情况有点不同。
在 powershell 中运行$profile
显示了我的配置文件应该在哪里,但那里什么都没有,所以我必须创建引用输出的路径和文件$profile
。
看起来所有用户、所有主机的配置文件的我的位置位于:
C:\Users\<name>\Documents\WindowsPowerShell\Microsoft.PowerShell_profile.ps1
答案3
我注意到所有用户配置文件都在,C:\Windows\System32\...
这意味着对于 32 位 Powershell,它们实际上是从C:\Windows\SysWOW64\...
打开 64 位 PowerShell 控制台并查看,$PROFILE.AllUsersAllHosts
然后打开 32 位 PowerShell 控制台并执行相同操作。您将看到配置文件有所不同。
您需要在所有配置文件中设置颜色方案,以便它们在所有条件下都能“呈现”。尽情享受吧。