Windows10终端优化方案:Ubuntu子系统+cmder+oh-my-zsh
原问地址:https://zhuanlan.zhihu.com/p/34152045
最近从MacBook换到了种草已久的Surface Book 2,而我的工作环境也自然要从macOS换到Windows10了。作为使用Mac系统多年做开发的程序员,使用Windows最大的问题之一就是终端。不能说Windows10的CMD和PowerShell太差,只是做开发真的需要支持Linux Bash、高效、并且美观的终端啊。比如macOS下的iTerm终端神器,真让人怀念啊。
为什么不继续用macOS?因为经过多方面比较后,我觉得Surface Book 2是目前为止最值得体验的笔记本。选择了它,就只能选Windows10了。不多说了,进入正题吧。我对Windows10下的终端期待的是:
- 支持Linux Bash,最好支持GNU工具链,能安装和执行Linux二进制可执行程序。嗯,只能是Linux了。
- 高效。能用Linux Bash就高效很多,其他辅助例如支持复制粘贴、多tab切换、和Windows文件系统交互。
- 美观。如果一个产品很丑(CMD?),真的不想碰啊!
经过研究,我决定使用Ubuntu子系统(Linux)、oh-my-zsh和cmder结合的解决方案。
安装Ubuntu子系统
参考我之前写的一篇文章:
Raysmond:Windows10开启Ubuntu子系统简易步骤zhuanlan.zhihu.com
安装和配置oh-my-zsh
安装oh-my-zsh首先需要安装zsh。zsh(Z Shell)是一个功能强大的交互式shell脚本命令解释器。它不仅支持bash,还提供一些强大和g高效的功能,例如更好的自动补全和纠错。
$ sudo apt-get install zsh
$ zsh --version
zsh 5.1.1 (x86_64-ubuntu-linux-gnu)
安装oh-my-zsh可以通过curl或者wget方式:
使用curl
sh -c "$(curl -fsSL https://raw.githubusercontent.com/robbyrussell/oh-my-zsh/master/tools/install.sh)"
或者wget
sh -c "$(wget https://raw.githubusercontent.com/robbyrussell/oh-my-zsh/master/tools/install.sh -O -)"
在.bash_profile中启用zsh,编辑文件,在末尾添加:
exec zsh
source .zshrc
安装cmder和配置
cmder是一个Windows上的一个终端模拟器,基于ConEmu,又加上了clink和Monokai的配色主题。cmder是一个非常美观的终端。直接下载解压到本地就可以运行了。


cmder中可以运行Windows的CMD和PowerShell,也可以运行一些模拟的Linux Bash和程序。我们需要在cmder运行Ubuntu子系统的zsh。配置也很简单,打开设置,在Tasks中添加一个{bash::ubuntu}的task。


配置完后,在右下角的图标中可以运行这个task。


更多阅读:
Raysmond | 2018-03-01
http://raysmond.com
Windows10终端优化方案:Ubuntu子系统+cmder+oh-my-zsh的更多相关文章
- Windows10内嵌Ubuntu子系统配置python开发环境
Windows10内嵌Ubuntu子系统配置python开发环境 安装pycharm. 到intellij idea网站下载Linux环境下载免费的pycharm,通过ubuntu子系统内部的/mnt ...
- Windows10访问Ubuntu子系统(WSL)的桌面环境
原文地址:https://blog.csdn.net/xmh19936688/article/details/90212960 Windows10访问Ubuntu子系统(WSL)的桌面环境文章目录Wi ...
- Windows10的Ubuntu子系统开启桌面环境
原文:Windows10的Ubuntu子系统开启桌面环境 Ubuntu 优势之一就是桌面环境比较好,所以咱们的子系统当然也不能少了这一环节,本小结开始安装Ubuntu 桌面系统. 安装环境 使用下面指 ...
- Windows10内置ubuntu子系统安装后中文环境设置
原文:Windows10内置ubuntu子系统安装后中文环境设置 第一开启相关设置,使用小娜(Win键+c)直接查找关键字打开更快. ①设置→查找"针对开发人员"→开发人员模式 ...
- 系统 (一) Windows10安装Ubuntu子系统
前言 本文将基于 Windows10专业版 安装 Ubuntu子系统 1.控制面板 -> 程序 -> 选择启用或关闭Windows功能 -> 勾上 适用Linux的Windwos子系 ...
- Windows10开启Ubuntu子系统并搭建Docker环境
前言 很早就听说微软有个基于Ubuntu的子系统,一直也没机会尝试一下,之前也只是用VMware安装,但是还要单独安装软件,安装镜像,一点都不fit,所以就瞎折腾下(也是因为最近有空). 搭建Ubun ...
- Windows10 ubuntu子系统的启用即基础配置
Windows 10 在一周年更新后,本身集成一个不带有图形界面的ubuntu 14.04系统了,大大方便了Linux开发,并且本身使用很方便,像我这种Windows死忠,只会在Linux下跑一下一定 ...
- windows10安装配置WSL(Ubuntu)
windows10安装配置WSL(Ubuntu) 怎么在windows系统上用上Linux?有这么几种方法: 1. 安装双系统.这种方法的缺点是每次切换系统都需要关机.切换系统. 2. 虚拟机+Lin ...
- Linux 性能优化之 IO 子系统 系列 图
http://blog.sina.com.cn/s/articlelist_1029388674_11_1.html Linux 性能优化之 IO 子系统(一) 本文介绍了对 Linux IO 子系统 ...
随机推荐
- [ReasonML] Named & optional params
// ::country is named param // ::country=?: which make it optional // because we make ::country=? op ...
- Java循环链表实现约瑟夫环(搬运)
public class Josephus { static class Node{ int val; Node next; Node(int v){ val=v; } }//成员类,代表节点,类似于 ...
- 2.5 Legacy APIs官网剖析(博主推荐)
不多说,直接上干货! 一切来源于官网 http://kafka.apache.org/documentation/ 2.5 Legacy APIs A more limited legacy prod ...
- golang pipe
===============golang pipe============== package main import ( "fmt" "io" ) func ...
- golang API 例子实现
golang API 例子实现 http://files.cnblogs.com/files/rojas/astaxie.zip
- ubuntu14.04.32 vmware11开发环境搭建
win7 64 vmware11 ubuntu14.04.32 在vmaware上安装ubuntu,自定义安装,选择区域为上海,这样数据源就会自动设置为中国,获取网络数据会较快,也可以安装完之后改变 ...
- ASP.NET MVC使用Ninject
Ninject是一个快如闪电的,轻量级的.....依赖注入框架,呃呃呃,貌似很少用到,Ninject就是一个DI容器,作用是对ASP.NET MVC程序中的组件进行解耦 ,说到解耦其实也有其他的方式可 ...
- Quartz学习总结(1)——Spring集成Quartz框架
一.Quartz简介 Quartz是OpenSymphony开源组织在Job scheduling领域又一个开源项目,它可以与J2EE与J2SE应用程序相结合也可以单独使用.Quartz可以用来创建简 ...
- Android怎样实现毛玻璃效果之Android高级模糊技术
自从iOS系统引入了Blur效果,也就是所谓的毛玻璃.模糊化效果.磨砂效果.各大系统就開始竞相模仿,这是如何的一个效果呢,我们先来看一下,如以下的图片: 效果我们知道了,怎样在Android中实现呢. ...
- ASP.Net MVC Filter验证用户登录
一.Filter是什么 ASP.NetMVC模式自带的过滤器Filter,是一种声明式编程方式,支持四种过滤器类型,各自是:Authorization(授权),Action(行为),Result(结果 ...