Linux Shell美化:zsh的安装与调校
zsh
是Linux下一种更加强大的Shell。在Linux默认的Shell是bash
,zsh
则要比bash
强大很多。
在Linux下,可以通过命令来查看系统中安装的Shell:
1 | cat /etc/shells |
你也可以通过命令来查看当前使用的Shell:
1 | echo $SHELL |
准备工作
我们首先需要做的就是把zsh
安装好。这里一共要安装两个东西,一个是zsh
本身,另一个是zsh
的简化配置工具oh-my-zsh
。
安装zsh
执行安装命令:
1 | sudo apt install zsh |
设置zsh
为默认Shell:
1 | chsh -s /bin/zsh |
重启终端,即可看到已经切换到zsh的模式。
当然如果想要界面更好看,最简单的方法是安装oh my zsh
。
安装oh my zsh
前置要求:系统已安装
git
根据oh my zsh
文档,你可以选择自动安装或者手动安装。
自动安装
三个命令任选其一可以使用的:
Method | Command |
---|---|
curl | sh -c "$(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)" |
wget | sh -c "$(wget -O- https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)" |
fetch | sh -c "$(fetch -o - https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)" |
手动安装
从您还不知道的项目中检查安装脚本是个好主意。您可以通过首先下载安装脚本,查看它使一切看起来正常,然后运行它来做到这一点:
1 | wget https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh |
zsh
的调校
环境变量
zsh 的配置主要集中在用户当前目录的.zshrc
里,用编辑器打开.zshrc
,其中有这么一行字:
1 | User configuration |
这一行下面就都是用户配置的内容了,可以在此处定义自己的环境变量和别名,当然,oh my zsh
在安装时已经自动读取当前的环境变量并进行了设置,你可以继续追加其他环境变量,如:
1 | alias cls='clear' |
zsh
的厉害之处在于不仅可以设置通用别名,还能针对文件类型设置对应的打开程序,比如:
alias -s html=mate
,意思就是你在命令行输入hello.html
,zsh会为你自动打开TextMat
并读取hello.html
。alias -s gz='tar -xzvf'
,表示自动解压后缀为.gz
的压缩包。
总之很强大。
主题
在.zshrc
里找到ZSH_THEME,就可以设置主题了,默认主题是:
1 | ZSH_THEME=”robbyrussell” |
oh my zsh
提供了数十种主题,相关文件在~/.oh-my-zsh/themes
目录下,你可以在Themes · ohmyzsh/ohmyzsh Wiki (github.com)预览它们,可以随意选择,也可以编辑主题满足自己的各种需求。我比较喜欢rkj-repos
这个主题。
诸多插件
zsh
的强大不光是因为他可以高度定制化,还拥有大量的社区插件内容,下面介绍几个主要并显著提高效率的。
色彩高亮插件
色彩高亮需要插件zsh-syntax-highlighting
来实现。
zsh-syntax-highlighting
安装
软件包安装(官方推荐)
使用命令:
1 | sudo apt install zsh-syntax-highlighting |
直接克隆修改~/.zshrc
文件
官方(GitHub):
1 | git clone https://github.com/zsh-users/zsh-syntax-highlighting.git |
然后需要重新载入Shell:
1 | source ./zsh-syntax-highlighting/zsh-syntax-highlighting.zsh |
使用oh-my-zsh
等框架的方式安装(个人采用)
其他框架详见:zsh-syntax-highlighting/INSTALL.md
进入$ZSH_CUSTOM/plugins
,使用命令:
官方(GitHub):
1 | git clone https://github.com/zsh-users/zsh-syntax-highlighting.git ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-syntax-highlighting |
启用插件:
1 | script |
重新加载~/.zshrc
文件:
1 | source ~/.zshrc |
命令提示插件
命令提示需要插件zsh-autosuggestions
来实现。
zsh-autosuggestions
安装
软件包安装
可以通过软件包的形式安装,详见:zsh-autosuggestions/INSTALL.md
使用oh-my-zsh
等框架的方式安装(个人采用)
详见:zsh-autosuggestions/INSTALL.md
进入$ZSH_CUSTOM/plugins
,使用命令:
官方(GitHub):
1 | git clone https://github.com/zsh-users/zsh-autosuggestions ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-autosuggestions |
在~/.zshrc
中添加插件:
1 | script |
重启zsh:
1 | source ~/.zshrc |