Windows10下打造漂亮好用的WSL(Linux)终端



前言

WSL(Windows Subsystem for Linux)即Windows下的Linux子系统,开启这个功能后就可以在Windows中无缝使用Ubuntu。目前我使用的Windows10自带的Ubuntu版本为Ubuntu 16.04。

Windows10开启WSL

1.设置->更新和安全->针对开发人员,设置为开发者模式:

2.设置->搜索启用或关闭Windows功能->在选项中勾上使用于Linux的Windows子系统:

  1. 重启电脑,打开cmd,输入命令bash,即可根据向导安装完成Ubuntu

安装Wsl-Terminal

Wsl-Terminal是一款专门为Windows10的WSL功能打造的一款终端模拟器,Wsl-Terminal支持如下功能:

  • 优秀的兼容性(中文显示/输入、 24 位颜色、命令输出等都正常了)。

  • 体积小巧,压缩包仅 1.7 M 多,解压后不到 10 M 。

  • 配置简单, mintty 可以直接在标题栏右键配置, wsl-terminal 的配置文件也很简单。

  • 可以直接在资源管理器右键打开终端模拟器并定位到当前目录。

  • 可以将 .sh/.py/.pl 脚本关联到用 wsl-terminal 运行。

  • 可以将文本文件关联到用 wsl-terminal 里的 vim 运行。

  • 支持 tmux ,可以在 tmux 里打开新目录,恢复已有的 tmux 会话等。

  • 支持在 WSL 里直接运行 Windows 程序。

Github: https://github.com/goreliu/wsl-terminal

使用方法:

1.下载发布包: https://github.com/goreliu/wsl-terminal/releases

2.解压后,直接运行 open-wsl.exe 即可在当前目录打开(可以关联到快捷键)。

3.可以运行 tools/add-open-wsl-here-menu.js 在资源管理器右键菜单里添加一个 Open WSL Here 菜单(tools/remove-open-wsl-here-menu.js 删除菜单)。

4.可以修改 .sh/.py/.pl/.php 等各种脚本的打开方式为 run-wsl-file.exe ,双击就可以打开。如果需要看结果的话,记得脚本最后加个 sleep 或者 read 。

5.可以修改文本文件的打开方式为 vim.exe ,双击就可以用 WSL 里的 vim 打开编辑。

6.如果想做 WSL 里边运行 Windows 的软件,运行 outbash-daemon.js ,然后把 bin 里的 wrun 、wstart 、wcmd 复制到 /usr/local/bin (可以直接运行 install_cbwin.sh ),然后 wstart notepad 就可以打开记事本了。

7.如果需要使用 tmux,在编辑文件里启用 use_tmux 即可。

美化 Wsl-Terminal

美化可以参考我的另一篇教程: https://blog.jaekj.com/article/zqle60.html

遇到的问题

1.安装好autojump后,每次切换目录就会输出警告autojump_chpwd:4 : nice(5) failed: 不允许的操作
解决方法:参考这个issues: https://github.com/wting/autojump/issues/474 ,添加下面这句指令到.zshrc文件中即可解决:

  1. unsetopt BG_NICE

2.设置zsh为默认shell后,每次启动Wsl-Terminal仍然是默认shell并没有切换为zsh
解决方法:参考这篇文章: How to Use Zsh (or Another Shell) in Windows 10 ,将下面代码加入到.bashrc文件中即可解决:

  1. # Launch Zsh
  2. if [ -t 1 ]; then
  3. exec zsh
  4. fi

3.关于字体,按照下面几步来