如何解决vscode powershell乱码

embedded/2025/1/9 0:06:38/

如何解决vscode powershell乱码

在 Visual Studio Code 中使用 PowerShell 时出现乱码,通常是由于终端编码设置或字体不匹配导致的。以下是解决 PowerShell 乱码问题的步骤:

  1. 设置 PowerShell 的默认编码

PowerShell 默认的输出编码可能与终端编码不一致。可以通过以下步骤更改默认编码:

方法一:设置为 UTF-8 编码

在 PowerShell 中运行以下命令:


[Console]::OutputEncoding = [System.Text.Encoding]::UTF8

要永久生效,可以在 PowerShell 配置文件 $PROFILE 中添加该命令:

  1. 检查配置文件路径:
$PROFILE
  1. 如果配置文件不存在,创建一个:
New-Item -ItemType File -Path $PROFILE -Force
  1. 编辑配置文件:
code $PROFILE
  1. 在文件中添加以下内容:
[Console]::OutputEncoding = [System.Text.Encoding]::UTF8
  1. 保存并关闭文件。

方法二:设置为 GBK 编码(适用于中文)

如果你需要使用 GBK 编码,可以将编码改为 GBK:

[Console]::OutputEncoding = [System.Text.Encoding]::GetEncoding("GBK")
  1. 检查 VSCode 终端的编码

确保 VSCode 的终端编码与 PowerShell 的编码一致。

修改 VSCode 的终端编码:

1.	打开 VSCode 的设置 (Ctrl + ,)。
2.	搜索 “terminal.integrated.shellArgs.windows”。
3.	添加以下设置,确保 PowerShell 使用 UTF-8:
"terminal.integrated.shellArgs.windows": ["-NoLogo","-Command","[Console]::OutputEncoding = [System.Text.Encoding]::UTF8"
]
  1. 调整 VSCode 字体

如果乱码是因为字体不支持特定字符(如中文),可以尝试更换终端的字体。

修改字体设置:1.	打开设置(Ctrl + ,)。2.	搜索 “Font Family”。3.	在 editor.fontFamily 和 terminal.integrated.fontFamily 中设置支持中文的字体,例如:"editor.fontFamily": "Consolas, 'Courier New', 'Microsoft YaHei'",
"terminal.integrated.fontFamily": "Consolas, 'Courier New', 'Microsoft YaHei'"
  1. 使用最新版本的 PowerShell

确保你使用的是最新版本的 PowerShell,因为旧版本可能存在编码问题。

检查版本:

$PSVersionTable.PSVersion

安装 PowerShell 最新版本:
1. 转到 PowerShell 官方下载页面。
2. 下载并安装最新版本。

  1. 设置 VSCode 使用最新 PowerShell
    1. 打开 VSCode 的设置(Ctrl + ,)。
    2. 搜索 “Default Profile”。
    3. 在终端设置中选择最新的 PowerShell 版本作为默认终端。

通过以上方法,通常可以解决 VSCode 中 PowerShell 的乱码问题。


http://www.ppmy.cn/embedded/148000.html

相关文章

电脑为什么会提示“msvcr120.dll丢失”?电脑找不到“msvcr120.dll文件“要怎么解决?

电脑为什么会提示“msvcr120.dll丢失”?遇到此问题该如何解决? 在我们使用电脑进行日常办公、学习或娱乐时,偶尔会遇到一些令人头疼的系统报错。其中,“msvcr120.dll丢失”这一提示,相信不少朋友都曾遇到过。这个看似…

Mybatis-plus-Join--分页查询

数据表四张: user: id,username,create_time,update_time product: id,name,price,number(库存),create_time,update_times order: id,quantity,order_time(下单时间),update_time order_detail:id,product_id,order_id,quant…

ELK系列-(五)指标收集-MetricBeat(下)

一、前文回顾 🔍 在前面的ELK系列中,我们已经搭建了ELK的核心组件,包括: ELK系列-(一)Docker部署ELK核心组件ELK系列-(二)LogStash数据处理的瑞士军刀ELK系列-(三&…

《庐山派从入门到...》板载按键启动!

《庐山派从入门到...》板载按键启动! 《庐山派从入门到...》板载按键启动! 视频内容大致如下 我们之前了解了GPIO的输出模式使用方法,并且成功点灯,很明显本篇要来分享的自然是GPIO的输入模式 正好回顾一下之前学的python基础包…

day14-16系统服务管理和ntp和防火墙

一、自有服务概述 服务是一些特定的进程,自有服务就是系统开机后就自动运行的一些进程,一旦客户发出请求,这些进程就自动为他们提供服务,windows系统中,把这些自动运行的进程,称为"服务" window…

基于MATLAB的图像增强

目录 一、背景及意义介绍背景图像采集过程中的局限性 意义 二、概述三、代码结构及说明(一)整体结构(二)亮度增强部分(三)对比度增强部分(四)锐度增强部分 四、复现步骤(…

百度2021校招Web前端研发工程师笔试卷(第一批)

百度2021校招Web前端研发工程师笔试卷(第一批)2024/12/18 1.某主机的 IP 地址为 212.212.77.55,子网掩码为 255.255.252.0。若该主机向其所在子网发送广播分组,则目的地址可以是? 212.212.79.255 2.小牛在学习了二叉…

SSD能否取代HDD纷争2.0

有关数据预测到2028年,全球产生的数据总量将达到394ZB。这表明在全球范围内,数据的价值比以往任何时候都更为重要,因为数据的产生和存储能力正在迅速增长。这种增长可能受到各种因素的推动,包括数字化转型、物联网(IoT)设备的激增…