Windows终端的一些配置
前言
记录早前拿到新的笔记本(win10)后配置命令行的过程,以下是环境:
命令行 : CMD,PowerShell7
Shell :Windows Terminal
设置编码格式(当前代码页)为UTF-8
注:一般可以通过 chcp 65001 命令修改当前代码页为UTF-8,但是如果要每次进入命令行都使用固定编码格式,则需要进行配置。
CMD
- 定位到以下注册表键值:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Command Processor
- 双击
AutoRun键,将其值设置为以下命令:(>nul是不让其启动时输出“Active code page: 65001”的提醒)
chcp 65001 >nul
PowerShell
- 使用以下命令打开 PowerShell 的配置文件:
notepad $PROFILE
如果 PowerShell 配置文件不存在,使用以下命令创建该文件:
New-Item -ItemType File -Path $PROFILE -Force
- 在配置文件中添加以下内容:
# 输入的内容格式为UTF-8
[Console]::OutputEncoding = [System.Text.Encoding]::UTF8
# 当前代码页改为65001(UTF-8)
chcp 65001 | Out-Null
注意:
配置文件一般默认位置在
C:\Users\用户名\Documents\PowerShell\(PowerShell7),或C:\Users\用户名\Documents\WindowsPowerShell\(PowerShell5)。名字通常以_profile.ps1结尾。如果提示
无法加载文件等类似的错误,则可能是因为系统安全策略禁止运行 PowerShell 脚本,可用如下步骤解决:- 在 PowerShell 命令行窗口中,输入以下命令,以查看当前执行策略:
Get-ExecutionPolicy
- 如果执行结果为
Restricted,则说明当前策略禁止运行所有脚本,输入以下命令来修改为较宽松的策略:
Set-ExecutionPolicy RemoteSigned
在弹出的确认提示中,选择“是(Y)”继续。
输入以下命令,以验证策略是否已经修改成功:
Get-ExecutionPolicy
如果执行结果为
RemoteSigned,则表明已经成功修改了 PowerShell 的执行策略。
命令行个性化
默认效果:

字体
因为需要使用到图形符号美化,所以建议使用 Nerd Font 字体,否则部分符号会显示为 “▯”。
选择喜欢的字体下载后安装即可,字体文件种类很多,选择名称中同时带有 “Mono”(等宽字体) 和 “Windows Compatible”(与win兼容) 的字体安装。
Oh My Posh
OhMyPosh 提供许多内置插件或者主题,也可以自定义主题,这里主要是使用它的内置主题。
安装 (官网安装教程)
根据上面官网教程,可以直接在 Windows应用商店安装 ,或者使用
winget安装:winget install JanDeDobbeleer.OhMyPosh -s winget
配置
使用上一步 设置编码格式 中的方法,打开 Power Shell 配置文件,添加以下行:
# 加载oh-my-posh 命令提示符个性化插件
oh-my-posh init pwsh --config "$env:POSH_THEMES_PATH\patriksvensson.omp.json" | Invoke-Expression
这里面的
patriksvensson.omp.json是对应的内置样式文件,具体有哪些内置的样式可以参考 OhMyPosh Themes ,选择喜欢的样式名字替换掉patriksvensson即可。
注意:使用OhMyPosh后,终端打开速度会稍微慢一些,我这边最后是需要750ms左右,看个人取舍安装
当前效果( ? 等设置好字体后就会替换成图标):

Terminal-Icons
Terminal-Icons 是一个 PowerShell 模块,它包含了一些文件和文件夹图标。
使用以下命令安装:
Install-Module -Name Terminal-Icons -Repository PSGallery
安装完成后打开 Power Shell 配置文件,添加以下内容后即可使用:
# 引入Terminal-Icons模块(终端文件图标)
Import-Module Terminal-Icons
当前效果( ? 等设置好字体后就会替换成图标):

Windows Terminal 设置
在 Windows Terminal 中,
Ctrl+,打开配置页面,依次选择配置文件-默认值 > 外观 > 字体选择之前下载安装好的 Nerd Font 字体(我这里选择的字体是 FiraCode NFM)。同样在
配置文件-默认值 > 外观中,可以修改背景图像,或者终端窗口的透明度。设置 > 配色方案选的是第三组:One Half Dark。
最终效果
按以上步骤全部设置后的最终效果如下:

设置命令行代理
在配置命令行时,有部分下载可能会卡住,可以使用下面的命令设置当前命令行的代理:
$env:HTTP_PROXY="http://代理服务器ip:端口"
$env:HTTPS_PROXY="http://代理服务器ip:端口"
相关链接:
Windows终端 https://learn.microsoft.com/zh-cn/windows/terminal/
NerdFonts https://www.nerdfonts.com/font-downloads
OhMyPosh https://ohmyposh.dev/docs
Windows终端的一些配置的更多相关文章
- Windows 重装系统,配置 WSL,美化终端,部署 WebDAV 服务器,并备份系统分区
最新博客文章链接 最近发现我 Windows11 上的 WSL 打不开了,一直提示我虚拟化功能没有打开,但我看了下配置,发现虚拟化功能其实是开着的.然后试了各种方法,重装了好几次系统,我一个软件一个软 ...
- Windows终端工具_MobaXterm
前言 有人喜欢小而美的工具,有人喜欢大集成工具.这里推荐一款增强型的Windows终端工具MobaXterm,它提供所有重要的远程网络工具(SSH,X11,RDP,VNC,FTP,MOSH ..... ...
- Windows 7上安装配置TensorFlow-GPU运算环境
Windows 7上安装配置TensorFlow-GPU运算环境 1. 概述 在深度学习实践中,对于简单的模型和相对较小的数据集,我们可以使用CPU完成建模过程.例如在MNIST数据集上进行手写数字识 ...
- Windows系统通用安全配置基线
一:共享账号检查 配置名称:账号分配检查,避免共享账号存在 配置要求: 1.系统需按照实际用户分配账号: 2.根据系统的使用需求,设定不同的账户和账户组,包括管理员用户,数据库用户,审计用户,来宾用户 ...
- Windows环境下Git配置及使用
Windows环境下Git配置及使用 一.安装包位置 Git下载地址https://git-scm.com/download/win TortoiseGit下载地址https://tortoisegi ...
- 深入浅出,遇见Windows Terminal(Windows终端器),体验及美化新一代终端神器
Windows Terminal 简介 Windows Terminal is a new, modern, feature-rich, productive terminal application ...
- Windows下python的配置
Windows下python的配置 希望这是最后一次写关于python的配置博客了,已经被python的安装烦的不行了.一开始我希望安装python.手动配置pip并使用pip安装numpy,然而发现 ...
- windows下安装和配置mongoDB
上次在mac下安装和配置了mongodb,这次在windows下也尝试安装和配置mongodb. 1.首先下载mongodb压缩包,下载后解压到D盘或E盘.如下: 2.配置环境变量:桌面—计算机右键— ...
- Windows 下用 gogs 配置局域网 git server
大道曙光 Windows 下用 gogs 配置局域网 git server 最近要用 C# 开发一个新的项目,所以需要在 Windows 局域网环境下构建一个 git server. 在 Window ...
- Cacti监控Windows主机,Windows主机的正确配置
使用cacti监控Windows主机的时候经常遇到无法获取Windows主机的snmp信息和Windows主机的硬件信息,主要原因是Windows主机没有正确配置snmp,以下是正确的配置步骤:1.安 ...
随机推荐
- JVM简单概述
一.内存模型&分区 Java虚拟机在运行Java程序时,会管理着一块内存区域:运行时数据区 在运行时数据区里,会根据用途进行划分为以下模块: 1.Java虚拟机栈 2.本地方法栈 3.Java ...
- C++跨DLL内存所有权问题探幽(一)DLL提供的全局单例模式
最近在开发的时候,特别是遇到关于跨DLL申请对象.指针.内存等问题的时候遇到了这么一个问题. 问题 跨DLL能不能调用到DLL中提供的单例? 问题比较简单,就是我现在有一个进程A,有DLL B DLL ...
- Transformer的应用
Transformer 写在前面 本学期学习了NLP的课程,本小菜鸡结合做的课设(基于Transformer的英文文档摘要系统的设计与实现),来写一下有关于Transformer的相关内容吧,有问题之 ...
- [转帖]5 分钟学会写一个自己的 Prometheus Exporter
https://cloud.tencent.com/developer/article/1520621学习一下怎么搭建呢. 去年底我写了一个阿里云云监控的 Prometheus Exporter, ...
- [转帖]Kingbase实现Oracle userenv函数功能
目录 1. 问题 2. 文档概述 3. Oracle userenv()函数功能调研 3.1. 函数名称/函数原型 3.2. 函数功能 3.3. 参数介绍 3.3.1. Parameter 3.4. ...
- [转帖] 常见的Socket网络异常场景分析
https://www.cnblogs.com/codelogs/p/16001770.html 原创:打码日记(微信公众号ID:codelogs),欢迎分享,转载请保留出处. 简介# 在目前微服务的 ...
- Edge浏览器安装 wetab ChatGPT插件的简单步骤
Edge浏览器安装 wetab ChatGPT插件的简单步骤 背景 首先感谢 神通的 李诺帆老师, 之前一直使用. https://chat.jubianxingqiu.com/#/chat/1002 ...
- [转帖]疑问:进程在竞争CPU时并没有真正运行,为什么还会导致系统的负载升高?
疑问:进程在竞争CPU时并没有真正运行,为什么还会导致系统的负载升高? 因为存在CPU上下文切换. linux系统说明 Linux是一个多任务操作系统,它支持远大于CPU数量的任务同时运行.当然,这些 ...
- 查找linux下面某目录下重名出现的文件以及次数
find . -name '*.data' -exec basename {} \;| sort | uniq -w32 --all-repeated=separate | uniq -c | sor ...
- vue中$once的使用
$once 可以给组件实例绑定一个自定义事件,但该事件只能被触发一次,触发之后随即被移除 $once的简单使用 <template> <div> <button @cli ...