常见终端工具输出中文乱码的解决方案

现在主流的代码编辑器默认编码格式都是UTF-8,这样编译出来的可执行程序在终端中经常会

出现乱码的情况。我日常工作主要使用的就是PowerShell和Git Bash,因此今天主要和大家分享这两个终端工具遇到乱码问题怎么解决。

PoweShell

①首先我们检查输入字符的编码格式,输入如下面命令:

bash 复制代码
[Console]::InputEncoding = [System.Text.Encoding]::UTF8

结果示例:

然后输入下面的命令检查输出:

bash 复制代码
[Console]::OutputEncoding = [System.Text.Encoding]::UTF8

结果示例:

可以看到目前我的输入字符仍然以UTF-8形式编码。

②打开 PowerShell,执行如下命令:

bash 复制代码
notepad $PROFILE

如果提示文件不存在,先执行下面的命令创建:

bash 复制代码
New-Item -Path $PROFILE -ItemType File -Force

在打开的文件中把这些内容添加进去:

bash 复制代码
# 统一控制台编码为UTF-8
[Console]::InputEncoding = [System.Text.Encoding]::UTF8
[Console]::OutputEncoding = [System.Text.Encoding]::UTF8
# 统一文件读写默认编码为UTF-8
$PSDefaultParameterValues['*:Encoding'] = 'utf8'

效果如下:

保存文件,重启 PowerShell 生效。

Git Bash

git bash我不推荐大家来运行exe,对windows编译出来的程序git bash不太适配,咱们尽量就用powershell解决就好。有低年级同学看了我下面这篇文章之后问我VScode默认没有控制台窗口怎么观察演示效果?

https://blog.csdn.net/qq_59757948/article/details/156981661?spm=1001.2014.3001.5501

我倒是想了个不用装其他插件的方法,直接在exe所在目录开启Windows终端:

然后运行exe就行了:

效果如下:

如果需要调试就用VScode里面的powershell窗口看打印信息就行。

相关推荐
至乐活着4 天前
Shell脚本编写最佳实践:打造健壮、可维护的自动化利器
自动化·bash·shell·脚本·最佳实践
儒雅的烤地瓜5 天前
计算机网络 | 网络诊断双刃剑:Tracert路由追踪实战与Windows防火墙端口配置指南
tcp/ip·计算机网络·wireshark·防火墙·powershell·cmd
风向决定发型丶8 天前
Shell中的特殊变量
linux·运维·bash
tiana_9 天前
写了个零依赖的 Go 版本管理器,curl | bash 完事
开发语言·golang·bash
无足鸟ICT11 天前
【RHCA+】bash命令
linux·开发语言·bash
甄同学11 天前
第十七篇:Bash Executor命令执行器,安全运行Shell命令
开发语言·安全·bash
儒雅的名12 天前
GoF设计模式——策略模式
设计模式·bash·策略模式
vortex513 天前
PowerShell Provider 机制详解:从文件系统到注册表的统一抽象
windows·powershell
hai31524754315 天前
九章空间几何对照直译法:通用芯片 / 定制专用芯片 编译适配规则
linux·汇编·bash
wok15715 天前
Git Bash 执行中文命令报错 127:MSYS 参数编码 bug 排查与修复
git·bug·bash