pw终端中输入以下:
$OutputEncoding = [console]::InputEncoding = [console]::OutputEncoding = [System.Text.Encoding]::GetEncoding(936);
修改方法:
1、以管理员身份打开powershell,运行下面代码
New-Item $PROFILE -ItemType File -Force
2、 打开C盘,找到我的文档中的WindowsPowerShell文件夹
3、编辑这个ps1文件(默认是空的),加上以下代码
英文使用utf-8:
$OutputEncoding = [console]::InputEncoding = [console]::OutputEncoding = New-Object System.Text.UTF8Encoding
中文使用:
$OutputEncoding = [console]::InputEncoding = [console]::OutputEncoding = [System.Text.Encoding]::GetEncoding(936);
4、以管理员身份打开powershell,运行下面代码
Set-ExecutionPolicy Unrestricted
5、打开powershell,输入chcp,查看代码活动页是否是 936(GBK) 和 65001 (UTF-8)
如果上述操作后仍然无法正常显示中文,应该是没有正确配置中文字体。推荐安装windows terminal,设置等宽且支持中文的字体。推荐支持Retina的等宽字体FiraCode Nerd Font Mono Retina
。
如果在VSCode中无法正常显示,参考以下配置:
- {
- "terminal.external.windowsExec": "C:\\Program Files\\PowerShell\\7\\pwsh.exe --nologo",
- "editor.fontFamily": "'FiraCode Nerd Font Mono Retina', 'Microsoft YaHei Mono', Consolas, 'Courier New', monospace",
- "terminal.integrated.minimumContrastRatio": 1,
- "terminal.integrated.defaultProfile.windows": "PowerShell",
- "terminal.integrated.profiles.windows": {
- "PowerShell": {
- "path": "C:\\Program Files\\PowerShell\\7\\pwsh.exe",
- "args": [
- "--nologo"
- ],
- "source": "PowerShell",
- "icon": "terminal-powershell"
- }
- }
- }