在Windows 11中需通过注册表统一修改CMD、PowerShell等控制台默认等宽字体:先编辑HKEY_CURRENT_USER\Console下的FaceName和FontWeight,再分别配置PowerShell 5.1与7+对应注册表路径,最后结束conhost.exe等进程强制刷新生效。

您希望在 Windows 11 中统一将所有命令提示符(CMD)、PowerShell、Windows Terminal(传统控制台模式)等控制台窗口的默认字体更改为等宽字体(如 Consolas、Cascadia Code 或 Source Code Pro),而系统设置界面无法批量修改所有控制台配置,必须通过注册表直接编辑各控制台程序的字体键值。
修改 CMD 和 PowerShell 的默认控制台字体
这一步直接影响 cmd.exe 和 powershell.exe 启动时的默认显示字体,但不改变 Windows Terminal 的配置(它使用独立 JSON 设置)。
1、按 Win + R 打开“运行”,输入 regedit 并以管理员身份运行注册表编辑器。
2、依次导航至路径:
HKEY_CURRENT_USER\Console
3、在右侧窗格中,查找名为 FaceName 的字符串值;若不存在,右键 → 新建 → 字符串值 → 命名为 FaceName。
4、双击 FaceName,在“数值数据”中输入您已安装的等宽字体全名(注意:此处填的是字体显示名称,不是文件名),例如:
Consolas 或 Cascadia Code 或 Source Code Pro。
⚠️ 不要填 .ttf 或 .otf 文件名,否则无效;必须与“字体设置”中显示的名称完全一致。
5、继续在同一位置(HKEY_CURRENT_USER\Console)新建一个 DWORD (32 位) 值,命名为 FontWeight,将其数值数据设为 400(常规字重)或 700(粗体),避免字体因权重不匹配而回退到 Lucida Console。
为每个 PowerShell 实例单独配置字体
PowerShell 7+ 和 Windows PowerShell(5.1)各自维护独立的控制台配置,需分别处理。遗漏任一路径会导致对应终端仍用默认字体。
方法一:配置 Windows PowerShell(5.1)
→ 导航至:
HKEY_CURRENT_USER\Software\Microsoft\PowerShell\1\ShellIds\ConsoleHost
→ 在右侧新建字符串值 FaceName,填入等宽字体显示名称(如 Cascadia Code)
→ 同时新建 DWORD 值 FontWeight,设为 400
方法二:配置 PowerShell 7/7.2/7.3+(若已安装)
→ 导航至:
HKEY_CURRENT_USER\Software\Microsoft\PowerShell\7\ShellIds\ConsoleHost
→ 同样新建 FaceName 和 FontWeight,内容与上一致
⚠️ 若该路径不存在,说明尚未运行过对应版本 PowerShell,首次启动后会自动生成,此时可再编辑
强制刷新控制台字体缓存
注册表改完不会立即生效,Windows 控制台进程会缓存字体设置,必须终止现有控制台宿主并清空内存映射。
第一步:关闭所有正在运行的 CMD、PowerShell 窗口(包括后台隐藏的)
第二步:打开任务管理器(Ctrl+Shift+Esc),在“详细信息”选项卡中找到并结束以下进程:
• conhost.exe
• WindowsTerminal.exe(如果使用旧版终端且启用传统控制台模式)
第三步:按下 Win + R,输入 cmd 回车,新窗口将立即应用您设置的等宽字体——这是最终验证点。

















