用了一个月的mac os, 又回归windows了, mac确实好看, 终端配合iterm2也很舒服, 奈何终究我们不合适...生态毕竟没有windows那么丰富;

切回windows最无法忍受的就是windows的终端了, 不管是cmd.exe还是包裹了windows terminalpowershell.exe, 用起来都不是那么的顺手, 好在微软早就推出了wsl(windows subsystem for linux), 是时候"入坑"了;

"入坑"wsl后的第一个问题 ---- 内存占用过高

我在安装docker desktop for windows时, 它提示我可以使用基于wsl2的引擎来提高docker在windows上的性能, 所以我就勾选了, 并按照它的提示进行操作, 装好后跑了几个容器发现内存跑到95%左右...这样肯定是不行的, 动动鼠标都掉帧...

好在不是没有解决方案的, 可以通过修改wsl的配置文件解决; 在$HOME目录下新建或编辑.wslconfig文件, 加入如下的内容(可以根据自己电脑的配置自行调整, 我目前使用的设备是16G+500G的)

[wsl2]
memory=4GB
swap=8GB
localhostForwarding=true

然后保存, 重启wsl

# 需要管理员权限
net stop LxssManager
net start LxssManager

wsl使用zsh, 并配置主题 agnoster

  1. 安装 zsh

sudo apt-get install zsh

  1. 安装 oh-my-zsh

使用在线脚本安装

sh -c "$(curl -fsSL https://raw.github.com/robbyrussell/oh-my-zsh/master/tools/install.sh)"

  1. 主题

使用agnoster主题需要先安装字体FiraCode, 下载后的文件中有一个readme文件里面有安装字体的方法

安装好字体后, 还需要配置承载zsh shell的客户端的字体; 就是说比如用的是windows terminal的话, 那么需要修改其字体为Fira Mono for Powerline

然后修改.zshrc文件

$HOME && vim .zshrc

修改 ZSH_THEME="agnoster"

这时候发现目录的背景色有点怪怪的, 看不清, 所以还需要调整一下

cp ~/.oh-my-zsh/theme/agnoster.zsh-theme ~/.oh-my-zsh/custom/theme/agnoster_wsl.zsh-theme && vim ~/.oh-my-zsh/custom/theme/agnoster_wsl.zsh-theme

修改下面的部分

# Dir: current working directory
prompt_dir() {
prompt_segment 075 $CURRENT_FG '%~' # blue修改成了075
}

保存重启wsl, 大功告成

配置rider终端使用wsl

vscode终端使用wsl

入坑wsl的更多相关文章

  1. RoboGuice 3.0 (一)入坑篇

    RoboGuice是什么? 一个Android上的依赖注入框架. 依赖注入是什么? 从字面理解,这个框架做了两件事情,第一是去除依赖,第二是注入依赖.简单理解就是,将对象的初始化委托给一个容器控制器, ...

  2. [SSIS] 在脚本里面使用数据库连接字符串进行查询等处理, 入坑

    入坑.!!!!! SSIS 中dts包 设置的  ADO.Net连接, 在传入脚本的时候, 我要使用 数据库连接,进行数据的删除操作. 于是我使用了 了如下的 代码 使用的是windows 身份验证, ...

  3. webpack入坑之旅(六)配合vue-router实现SPA

    这是一系列文章,此系列所有的练习都存在了我的github仓库中vue-webpack,在本人有了新的理解与认识之后,会对文章有不定时的更正与更新.下面是目前完成的列表: webpack入坑之旅(一)不 ...

  4. webpack入坑之旅(五)加载vue单文件组件

    这是一系列文章,此系列所有的练习都存在了我的github仓库中vue-webpack,在本人有了新的理解与认识之后,会对文章有不定时的更正与更新.下面是目前完成的列表: webpack入坑之旅(一)不 ...

  5. webpack入坑之旅(四)扬帆起航

    这是一系列文章,此系列所有的练习都存在了我的github仓库中vue-webpack,在本人有了新的理解与认识之后,会对文章有不定时的更正与更新.下面是目前完成的列表: webpack入坑之旅(一)不 ...

  6. webpack入坑之旅(三)webpack.config入门

    这是一系列文章,此系列所有的练习都存在了我的github仓库中vue-webpack,在本人有了新的理解与认识之后,会对文章有不定时的更正与更新.下面是目前完成的列表: webpack入坑之旅(一)不 ...

  7. webpack入坑之旅(二)loader入门

    这是一系列文章,此系列所有的练习都存在了我的github仓库中vue-webpack 在本人有了新的理解与认识之后,会对文章有不定时的更正与更新.下面是目前完成的列表: webpack入坑之旅(一)不 ...

  8. webpack入坑之旅(一)不是开始的开始

    最近学习框架,选择了vue,然后接触到了vue中的单文件组件,官方推荐使用 Webpack + vue-loader构建这些单文件 Vue 组件,于是就开始了webpack的入坑之旅.因为原来没有用过 ...

  9. gulp入坑系列(2)——初试JS代码合并与压缩

    在上一篇里成功安装了gulp到项目中,现在来测试一下gulp的合并与压缩功能 gulp入坑系列(1)--安装gulp(传送门):http://www.cnblogs.com/YuuyaRin/p/61 ...

随机推荐

  1. Sublime Text 3 习惯插件 转

    原帖:https://www.cnblogs.com/hykun/p/sublimeText3.html Emmet插件 Emmet插件可以说是使用Sublime Text进行前端开发必不可少的插件 ...

  2. 【对线面试官】Java 反射&&动态代理

    // 抽象类,定义泛型<T> public abstract class BaseDao<T> { public BaseDao(){ Class clazz = this.g ...

  3. C++ 中的 inline 详解

    inline:是一个关键词,放在一个函数前面,说明这个函数是inline函数. inline函数是什么?inline有什么作用? 为了解答这个问题,我们首先要知道编译器是如何为我们工作的. 先看一段代 ...

  4. ptgmk

    num >= 1125899906842624 ? "P" \ : num >= 1099511627776 ? "T" \ : num >= ...

  5. SW3518中文规格书

    SW3518 是一款高集成度的多快充协议双口充电芯片, 支持 A+C 口任意口快充输出, 支持双口独立限流. 其集成了 5A 高效率同步降压变换器, 支持 PPS/PD/QC/AFC/FCP/SCP/ ...

  6. 迈凯伦765LT/600LT/720S/650S/570S维修手册电路图Mclaren车间手册接线图

    全套迈凯伦维修手册电路图Mclaren车间手册线路图:语言:English,German,French,Spanish,Chinese,Japanese.McLaren迈凯伦新GT维修手册电路图零配件 ...

  7. Java异常处理场景中不同位置的返回值详细解析

    Java 异常处理中的返回值在不同位置不同场景下是有一些差别的,这里需要格外注意 具体分以下两种场景: 1 finally语句块没有return语句,即当代码执行到try或者catch语句块中的ret ...

  8. Linux Ubuntu系统版本通过Crontab设置定时任务的执行

    Linux Ubuntu系统版本通过Crontab设置定时任务的执行 本文由本人收集网络信息总结而来 特别鸣谢:https://linux.zone/2258 1 crontab 简单介绍以及语法使用 ...

  9. Java基础复习2

    三目运算符 语法:条件判断?表达式1:表达式2; 如果条件判断成立则获取值1否则获取值2 public class demo1{     public static void main(String[ ...

  10. 中断与系统调用深度分析(以网络编程接口SocketAPI为例)

    1.从计算机CPU与I/O设备的交互方式谈起 计算机CPU与I/O设备的交互方式有最早的程序查询(也叫轮询)方式,发展到后来的程序中断方式,DMA方式等.简单来说,最早的程序查询方式的机制是,CPU若 ...