为什么运行 PowerShell 会改变我的控制台字体?

为什么运行 PowerShell 会改变我的控制台字体?

我的笔记本电脑出现了一个奇怪的问题——当我在现有控制台窗口中运行 Powershell 时,窗口的字体选择会发生变化。

例如,这是打开窗口后立即运行的cmd.exe: 打开时命令控制台

使用的字体、窗口大小和颜色是正确的 - 字体是 16pt 的 Lucida Console。

然后我运行PowerShell,结果如下:

在此处输入图片描述

字体已更改为 12x16 像素的“光栅字体”!其他窗口属性 - 颜色、行数、列数 - 均保持不变。

知道它为什么会切换吗?

注意:在研究这个问题时 - 因为 Raster Font 太丑了,让我很烦 - 我发现其他人报告在设置 powershell 控制台窗口的字体时出现问题(例如问题“无法将 powershell 默认字体更改为 Lucida Console“)。虽然我的问题不同(因为我是从现有控制台窗口启动 Powershell,而不是从开始屏幕启动),但我认为一个解决方案可能会对另一个解决方案有所帮助。

答案1

对我来说,这是因为批处理文件在里面UTF-8(需要它来处理重音和特殊字符)。我所做的是在启动之前
将代码页更改为437命令。

chcp 437 > nul
Powershell.exe -executionpolicy unrestricted -File  X:\Scripts.ps1

答案2

我遇到了完全相同的问题,这让我很抓狂。以下是我纠正它的方法,希望它也能对你有用:

  1. 在 cmd.exe 中,运行 powershell 命令。

  2. 在 cmd.exe 中的 powershell 提示符下,转到设置并将字体更改为 Lucida Console。

  3. 退出 powershell 提示符,仍在 cmd.exe 中,转到设置并将字体更改为 Lucida Console。

  4. 为了采取更好的措施,作为一个额外的步骤,我start powershell从 cmd.exe 运行并在那里更改了字体。

  5. 现在我的强迫症终于可以休息了,我笑了。现在当我转到开始 -> 运行 -> cmd.exe 并使用 powershell 命令时,它会停留在 Lucida 控制台。

我重新启动了计算机并重新打开了所有内容,到目前为止,它似乎对我有帮助。

我希望这对你的探索有所帮助=)

相关内容