在 Windows 中将 PowerShell 编码修改为 UTF-8 2025-09-17 生活,记录 暂无评论 3 次阅读 # 🌐 在 Windows 中将 PowerShell 编码修改为 UTF-8 在 Windows 系统中使用 PowerShell 时,经常会遇到中文字符乱码的问题。这通常是因为默认编码不是 UTF-8 所导致的。 本文将介绍几种常见且有效的方式,将 PowerShell 的编码设置为 **UTF-8**,避免输出乱码问题。 --- ## 💡 为什么要使用 UTF-8 * UTF-8 是目前最通用的字符编码标准,支持几乎所有语言文字。 * 跨平台兼容性强,避免在 Windows 与 Linux、Mac 之间传输文件时出现乱码。 * 许多开发工具、构建脚本、Git 仓库默认使用 UTF-8。 --- ## ⚙️ 方法一:临时修改当前会话编码 如果只是临时运行某个脚本,可以在当前 PowerShell 会话中执行以下命令: ```powershell # 设置输出编码为 UTF-8 $OutputEncoding = [Console]::OutputEncoding = [System.Text.Encoding]::UTF8 # 设置输入编码为 UTF-8(可选) [Console]::InputEncoding = [System.Text.Encoding]::UTF8 ``` **注意**:这种方法只在当前 PowerShell 窗口有效,关闭后会失效。 --- ## ⚙️ 方法二:永久修改 PowerShell 配置文件 如果你想 **每次启动 PowerShell 都自动使用 UTF-8**,可以编辑 PowerShell 的配置文件: 1. 打开配置文件(如果不存在会自动创建): ```powershell notepad $PROFILE ``` 2. 在文件末尾添加以下内容: ```powershell [Console]::OutputEncoding = [System.Text.Encoding]::UTF8 [Console]::InputEncoding = [System.Text.Encoding]::UTF8 ``` 3. 保存后重启 PowerShell。 这样每次启动 PowerShell 都会自动设置为 UTF-8。 --- ## ⚙️ 方法三:修改控制台代码页 对于 PowerShell 5.x 或更老版本,或者想要设置 **控制台层级的编码**,可以使用 `chcp` 命令: ```powershell chcp 65001 ``` * `65001` 表示 UTF-8 代码页 * 该方式也只是 **当前会话有效**,关闭后会还原 --- ## ✅ 验证当前编码是否为 UTF-8 执行以下命令查看当前输出编码: ```powershell [Console]::OutputEncoding ``` 输出结果应包含: ``` System.Text.UTF8Encoding ``` 表示当前 PowerShell 输出已使用 UTF-8 编码。 --- ## 📌 总结 | 方法 | 是否永久 | 适用场景 | | ------------ | ---- | ------------------ | | 临时修改编码 | ❌ | 一次性运行脚本 | | 修改配置文件 | ✅ | 每次启动自动应用 | | 修改代码页 (chcp) | ❌ | 旧版本 PowerShell、CMD | 建议开发者在日常开发环境中采用**方法二(修改配置文件)**,既简单又持久有效。 --- 如果你愿意,我还可以在文章末尾补充一段 **自动一键配置 UTF-8 的脚本**,让读者只需运行一次即可完成设置。 要不要我帮你加上这个脚本?(适合作为博客附赠工具) 打赏: 微信, 支付宝 标签: none 本作品采用 知识共享署名-相同方式共享 4.0 国际许可协议 进行许可。