一、结论
- 安装 PowerShell7 可以解决绝大多数中文乱码问题
- 前提:终端 + 编辑器 + 文件编码统一为 UTF-8
二、背景与原因(为什么会乱码)
Windows 下常见编码不一致:
- Codex / Node / 大部分现代工具 → UTF-8
- Windows PowerShell 5.1 → GBK(936)
当程序输出 UTF-8,而终端按 GBK 解析 → 中文变乱码
👉 本质:编码不一致
三、为什么 PowerShell 7 能解决
- PowerShell 7 默认使用 UTF-8
- 与 Codex / Node 编码一致
- 不需要额外转换
👉 直接消除编码冲突
四、安装方式
方法一:winget(推荐)
适用:Windows 10 / 11
操作步骤:
-
打开开始菜单
-
搜索:
PowerShell -
右键 → 以管理员身份运行
-
执行:
powershell
winget install --id Microsoft.PowerShell --source winget
- 等待安装完成
方法二:官网下载(通用)
操作步骤:
-
打开浏览器
-
访问:
-
在页面最上方找到最新版本
-
下载文件:
PowerShell-7.x.x-win-x64.msi
-
双击安装包
-
一路点击:
- Next → Next → Install → Finish
五、验证安装
操作路径:
- 打开开始菜单
- 搜索:
pwsh - 打开 PowerShell 7
执行:
powershell
pwsh -v
看到版本号(如 7.x.x)即成功
六、VS Code 配置(关键步骤)
如果不切换,仍可能使用旧 PowerShell
操作路径:
-
打开 VS Code
-
按:
Ctrl + Shift + P打开命令面板 -
输入:
Terminal: Select Default Profile -
选择:
PowerShell 7 (pwsh) -
新建终端(Ctrl + `)生效
七、可选优化(进一步避免乱码)
在 PowerShell 7 终端执行:
powershell
[Console]::OutputEncoding = [System.Text.Encoding]::UTF8
八、常见问题排查
-
仍然乱码
- 确认终端是
pwsh(不是 powershell)
- 确认终端是
-
VS Code 已切换但无效
- 关闭终端 → 重新打开
-
文件本身乱码
- 确认文件编码是 UTF-8
- VS Code 右下角查看编码
-
部分程序乱码
- 可能程序自身编码问题(少见)
九、总结
问题本质是编码不一致。
解决方法是统一为 UTF-8。
而 PowerShell 7 是关键一步。