WSL 使用记录

简介

WSL 是 Windows Subsystem for Linux 的缩写。它是 Win10 系统下面的一个 Linux 子系统。

安装和卸载 WSL环境

安装

在 Win10 上的 Microsoft Store 中搜索 Linux,就可以看到 WSL 所支持的 Linux 版本,找到想要安装的版本直接安装就可以了。目前,WSL支持 Ubuntu,Kali Linux,GNU,OpenSUSE 等,后续可能会有更多Linux发行版支持WSL。本文主要记录 Ubuntu 的使用过程。

安装报错

1
2
3
4
5
Installing, this may take a few minutes...
WslRegisterDistribution failed with error: 0x8007019e
The Windows Subsystem for Linux optional component is not enabled. Please enable it and try again.
See https://aka.ms/wslinstall for details.
Press any key to continue...

报错原因是没有启用 WSL,解决办法在输出信息里,直接打开链接,就可以看到解决办法。注意: 要用管理员方式打开 PowerShell。

卸载和重装

随便去试吧,如果你搞坏了你的 WSL 环境,它很容易重新安装。在进行之前,请确保做好了任何重要内容的备份。

1
2
C:/> lxrun.exe /uninstall /full
C:/> lxrun.exe /install

设置相关

访问 Windows 磁盘

WSL 将 Windows 系统的磁盘符都挂在到 /mnt 目录下了,所以如果想在 Ubuntu 中访问 Windows 系统的 C 盘,可以使用命令 cd /mnt/c

修改默认 Shell

可以使用 echo $SHELL 命令查看当前正在使用的 Shell,使用 which zsh 可以查看安装的 zsh 路径,使用 chsh -s /bin/zsh 修改默认 Shell。

使用 Fish Shell

  1. 安装 fishapt-get install fish
  2. 设置默认 shellfish
    • 使用 vim ~/.bashrc 命令打开文件
    • 在文件末尾添加一行 fish 命令

常用命令

  1. cd /cd ~ 回到根目录或回到 Home 目录
  2. cd - 回到前一个工作路径
  3. 在 Bash 中,可以按下 Ctrl+W 删除你键入的最后一个单词,Ctrl+U 可以删除行内光标所在位置之前的内容,Alt+左/右 可以以单词为单位移动光标,Ctrl+A 可以将光标移至行首,Ctrl+E 可以将光标移至行尾,Ctrl+K 可以删除光标至行尾的所有内容,Ctrl+L 可以清屏。
  4. Ctrl+D 一个特殊的二进制值,表示 EOF,作用相当于在终端中输入 exit 后回车;
  5. Linux 中的三个终端控制键:
    1. Ctrl+C 比较暴力,就是发送 Terminal 到当前的程序,比如你正在运行一个查找功能,文件正在查找中,Ctrl+C就会强制结束当前的这个进程。也可以取消命令执行,比如你已经输入了一长串命令了,这时突然不想执行这个命令了,就可以按下这个组合键取消。
    2. Ctrl+Z 是把当前的程序挂起,暂停执行这个程序,比如你正在 mysql 终端中,需要出来搞点其他的文件操作,又不想退出 mysql 终端(因为下次还得输入用户名密码进入,挺麻烦),于是可以 Ctrl+Z 将 mysql 挂起,然后进行其他操作,然后输入fg回车后就可以回来,当然可以挂起好多进程到后台,然后 fg 加编号就能把挂起的进程返回到前台。当然,配合 bgfg 命令进行前后台切换会非常方便。
    3. Ctrl+D 是发送一个 exit 信号,没有那么强烈,类似Ctrl+C 的操作,比如你从管理员 root 退回到你的普通用户就可以这么用。
  6. Ctrl+R 逆向搜索历史命令
  7. Ctrl+P 访问上一条命令
  8. Ctrl+N 访问下一条命令
  9. !! 执行上一条命令,!foo 执行以 foo 开头的命令
  10. scp [localpath] [username]@[ip]

在命令行中高效移动

Moving efficiently in the command line

参考链接

https://github.com/iWangJiaxiang/WSL-Guideline