Win10 Terminal + WSL 2 安装配置指南,精致开发体验
自从 Windows Terminal 正式发布后就再没有用过 Windows 系统自带的终端了。主要是 Terminal 简洁且灵活,更重要的是支持特殊字体,通过一些简单的配置可以使得终端看起来更舒适养眼。
自从 Win 10 有了 Linux 子系统(WSL),早就把电脑上的 vmware 虚拟机软件卸载了。WSL 体验之好,谁用谁知道。
先给大家看看我个人的配置效果图:

安装 WSL 2
WSL,Windows Subsystem for Linux(适用于 Linux 的 Windows 子系统)的简写。它有两个版本,WSL 1 和 WSL 2。 建议使用 WSL 2,它具有更好的整体性能。
安装 WSL 2,对不同架构的 CUP 有不同的 Win10 版本要求。为了简单起见,你只需确保你的 Win10 版本号为 2004(内部版本19041或更高)即可。PS:使用 win + r 输入 winver 可快速查看 Windows 版本。
如果你的 Win10 版本号低于 2004,可使用 Windows 10 易升工具手动升级。下载 Windows 10 易升工具:
https://www.microsoft.com/zh-cn/software-download/windows10
下载下来后双击运行,等待完成升级即可(升级过程比较漫长)。
安装 WSL 2 之前,必须启用“虚拟机平台”可选功能。使用管理员身份打开 PowerShell,执行以下命令:
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
接下来需要安装 Linux 分发版本。打开微软应用商店,搜索 Ubuntu,在列表中选择最新的长期支持版本 20.04 LTS 并安装。

使用任一终端,输入以下命令查看 WSL 版本,确保 WSL 的版本为 2.0:
$ wsl -l -v
NAME STATE VERSION
* Ubuntu-20.04 Stopped 2
如果你之前安装过 WSL,当前不是 WSL 2 版本,可以通过以下命令设置 WSL 的默认版本:
wsl --set-version Ubuntu-20.04 2
PS:从 WSL 1 更新到 WSL 2 可能需要几分钟才能完成,具体取决于目标分发版的大小。
安装 Terminal
打开微软应用商店,搜索“Terminal”,安装,打开后的界面是这样的:

默认打开的是 PownerShell 终端,我们可以设置为默认打开 Ubuntu 终端。点击标签右边的下拉三角,选择设置:

会打开一个 JSON 配置文件,在 profiles->list 中找到 Ubuntu 的 guid 并复制。

将它粘贴为文件开头的 defaultProfile 的值:

安装 oh-my-zsh
我们需要先安装一些额外的字体来支持 oh-my-zsh 显示特殊的符号。打开 PowerShell,依次执行如下命令 Powerline 字体集合:
git clone https://github.com/powerline/fonts.git
cd fonts
.\install.ps1
接着安装 zsh:
sudo apt update
sudo apt install git zsh -y
再安装 oh-my-zsh:
sh -c "$(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"
此步如果报如下错误:
curl: (7) Failed to connect to raw.githubusercontent.com port 443: Connection refused
解决办法有很多种,请自行解决。
安装完 oh-my-zsh 后,编辑 ~/.zshrc 文件,将主题设置为 agnoster:

再次打开 Terminal 的 JSON 配置文件,在 schemes 中添加一个主题,主题名随意,这里为 wsl2:
"schemes": [
{
"name" : "wsl2",
"background" : "#002B36",
"black" : "#002B36",
"blue" : "#268BD2",
"brightBlack" : "#657B83",
"brightBlue" : "#839496",
"brightCyan" : "#D33682",
"brightGreen" : "#B58900",
"brightPurple" : "#EEE8D5",
"brightRed" : "#CB4B16",
"brightWhite" : "#FDF6E3",
"brightYellow" : "#586E75",
"cyan" : "#2AA198",
"foreground" : "#93A1A1",
"green" : "#859900",
"purple" : "#6C71C4",
"red" : "#DC322F",
"white" : "#93A1A1",
"yellow" : "#B58900"
}
],
然后在该 JSON 文件中把 wsl 终端的主题设置为该 wsl2 主题,并把字体改为你喜欢的一个 Powerline 字体:

最后一步,再做一点点美化:把命令行的机器名称去掉,并调整用户名的背景色。编辑 agnoster 主题文件:
vi ~/.oh-my-zsh/themes/agnoster.zsh-theme
把 92 行修改为:
prompt_segment green black "%(!.%{%F{yellow}%}.)%n"
修改后如下:

关闭 Terminal 再重新打开,效果如下:

配置完成!
当然,你也可以去 Google 自己喜欢的主题,比如更为鲜亮的 Dracula 主题:

如若你在安装配置过程中遇到问题,请留言。
Win10 Terminal + WSL 2 安装配置指南,精致开发体验的更多相关文章
- [转载]SharePoint 2013测试环境安装配置指南
软件版本 Windows Server 2012 标准版 SQL Server 2012 标准版 SharePoint Server 2013 企业版 Office Web Apps 2013 备注: ...
- 【转】服务器证书安装配置指南(Weblogic)
服务器证书安装配置指南(Weblogic) 详情请点击: http://verisign.itrus.com.cn/html/fuwuyuzhichi/fuwuqizhengshuanzhuangpe ...
- 大数据应用日志采集之Scribe 安装配置指南
大数据应用日志采集之Scribe 安装配置指南 大数据应用日志采集之Scribe 安装配置指南 1.概述 Scribe是Facebook开源的日志收集系统,在Facebook内部已经得到大量的应用.它 ...
- 【转】Syncthing – 数据同步利器---自己的网盘,详细安装配置指南,内网使用,发现服务器配置
Syncthing – 数据同步利器---自己的网盘,详细安装配置指南,内网使用,发现服务器配置 原贴:https://www.cnblogs.com/jackadam/p/8568833.html ...
- 高可用,完全分布式Hadoop集群HDFS和MapReduce安装配置指南
原文:http://my.oschina.net/wstone/blog/365010#OSC_h3_13 (WJW)高可用,完全分布式Hadoop集群HDFS和MapReduce安装配置指南 [X] ...
- Eclipse IDE for C/C++ Developers和MinGW安装配置C/C++开发学习环境详解
Eclipse IDE for C/C++ Developers和MinGW安装配置C/C++开发学习环境详解 操作系统:Windows 7 JDK版本:1.6.0_33 Eclipse版本:Juno ...
- Gitolite v3安装配置指南
使用gitolite对git仓储进行权限配置 gitolite在近期做了很多代码改动,升级到了v3版本,而我使用的是v3.5.2.在<Git权威指南>中所提及的是v2版本,有很多东西已经不 ...
- 一网成擒全端涵盖,在不同架构(Intel x86/Apple m1 silicon)不同开发平台(Win10/Win11/Mac/Ubuntu)上安装配置Python3.10开发环境
原文转载自「刘悦的技术博客」https://v3u.cn/a_id_200 时光荏苒,过隙白驹,即将进入2022年,著名敏捷开发语言Python也放出了3.10最终版,本次我们来展示一下在不同的系统和 ...
- 在win10系统环境下,安装配置sublime 3,构建python和vue.js开发环境(插件)
原文转载自「刘悦的技术博客」https://v3u.cn/a_id_131 疫情当下,最近一直在用mac下的虚拟机运行win10系统,由于在线人数过多,直播授课的时候使用vscode的时候内存暴涨,于 ...
随机推荐
- Python练习题 033:Project Euler 005:最小公倍数
本题来自 Project Euler 第5题:https://projecteuler.net/problem=5 # Project Euler: Problem 5: Smallest multi ...
- 《kubernetes + .net core 》dev ops部分
目录 1.kubernetes 预备知识 1.1 集群资源 1.1.1 role 1.1.2 namespace 1.1.3 node 1.1.4 persistent volume 1.1.5 st ...
- 【网络协议】TCP/IP:数据链路层
物理层负责把计算机中的0.1数字信号转换为具体传输媒介的物理信号(电压的高低.电波的强弱.光的闪灭) 数据链路层协议定义了(通过通信介质互连的设备间的)数据传输规范 (常见的通信介质有同轴电缆.双绞线 ...
- SCOI 2008 【奖励关】
早上的考试一道都做不出,被教做人,心态爆炸ing...... 题目描述: 你正在玩你最喜欢的电子游戏,并且刚刚进入一个奖励关.在这个奖励关里,系统将依次随机抛出k次宝物,每次你都可以选择吃或者不吃(必 ...
- volatile、ThreadLocal的使用场景和原理
并发编程中的三个概念 原子性 一个或多个操作.要么全部执行完成并且执行过程不会被打断,要么不执行.最常见的例子:i++/i--操作.不是原子性操作,如果不做好同步性就容易造成线程安全问题. 可见性 多 ...
- Ztree树节点应用
树节点增删改查: 前台jsp页面: <% String root=request.getContextPath();//获取项目目录 %> <SCRIPT type="te ...
- 实验五 用PS制作图文合成海报
实验五 用PS制作图文合成海报 [实验目的] ⑴.熟悉PS软件基本操作 ⑵.学会用PS制作内容较丰富的海报式广告 [实验条件] ⑴.个人计算机一台 ⑵.个人计算机中预装Windows7操作系统和浏览 ...
- day23 Pyhton学习 昨日回顾.re模块.序列化模块
一.昨日回顾 #__file__查看当前文件所在的绝对路径 #time 时间模块 time.time 获取当前时间戳时间 字符串->time.strptime->结构化->mktim ...
- SpringBoot+MongoDB实现物流订单系统
码字不易,点赞收藏,养成习惯!原创作者公众号:bigsai.更多精彩期待与您分享!项目收录在github的MongoDB案例中,文章收录在回车课堂中如果没基础请看看前两篇(墙裂推荐)MongoDB从立 ...
- 每个人都可以用C语言写的推箱子小游戏!今天你就可以写出属于自己项目~
C语言,作为大多数人的第一门编程语言,重要性不言而喻,很多编程习惯,逻辑方式在此时就已经形成了.这个是我在大一学习 C语言 后写的推箱子小游戏,自己的逻辑能力得到了提升,在这里同大家分享这个推箱子小游 ...