Oh My Zsh 是一款社区驱动的命令行工具,是基于 Zsh 命令行的一个扩展工具集,提供了丰富的扩展功能,如:主题配置,插件机制,内置的便捷操作等,可以给我们一种全新的命令行使用体验。下文对 Oh My Zsh 的安装及配置方法进行总结,只总结最佳的实践。
1. 安装 Oh My Zsh
第一步:安装 Zsh
# 安装 Zshsudo apt install zsh# 将 Zsh 设置为默认 Shellchsh -s /bin/zsh# 可以通过 echo $SHELL 查看当前默认的 Shell,如果没有改为 /bin/zsh,那么需要重启 Shell。复制代码
第二步:安装 Oh My Zsh
# 安装 Oh My Zshwget https://github.com/robbyrussell/oh-my-zsh/raw/master/tools/install.sh -O - | sh# 以上命令可能不好使,可使用如下两条命令wget https://github.com/robbyrussell/oh-my-zsh/raw/master/tools/install.shbash ./install.sh复制代码
2. Zsh 的配置
2.1 字体的安装
推荐在终端使用 Powerline 类型的主题,该类型主题可以使用图形表示尽可能多的信息,方便用户的使用。推荐安装用户量最大的 。
Powerlevel9k 中需要使用较多的图形符号,字体大多不会自带这些符号,所以需要使用专门的 Powerline 字体。
不推荐安装官方默认的 Powerline Fonts,理由是图形符号不全,符号处会有乱码。推荐安装 Nerd-Fonts 系列字体,因为该系列字体附带有尽可能全的符号,并且更新非常频繁,。例如直接下载 中的,然后直接在Ubuntu下安装。
2.2 主题及字体的配置
如果要在 中安装 Powerlevel9k ,只需执行如下指令:
git clone https://github.com/bhilburn/powerlevel9k.git ~/.oh-my-zsh/custom/themes/powerlevel9k复制代码
3. 插件配置
3.1
更快地切换目录,不受当前所在目录的限制。
安装:
sudo apt install autojump复制代码
用法:
# 跳转到目录j dir# 可以通过GUI文件管理器打开指定目录,执行命令:jo dir复制代码
3.2
快速访问文件或目录,功能比前一个插件强大。
安装:
sudo apt install fasd复制代码
用法:
alias f='fasd -f' # 文件alias d='fasd -d' # 目录alias a='fasd -a' # 任意alias s='fasd -si' # 显示并选择alias sd='fasd -sid' # 选择目录alias sf='fasd -sif' # 选择文件alias z='fasd_cd -d' # 跳转至目录alias zz='fasd_cd -d -i' # 选择并跳转至目录复制代码
3.3
命令行命令键入时的历史命令建议插件
按照官方文档提示,直接执行如下命令安装:
git clone https://github.com/zsh-users/zsh-autosuggestions ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-autosuggestions复制代码
3.4
命令行语法高亮插件
按照官方文档提示,直接执行如下命令安装:
git clone https://github.com/zsh-users/zsh-syntax-highlighting.git ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-syntax-highlighting复制代码
3.5 插件最终配置
# autojump 功能弱,fasd 功能强,但是没 autojump 实用# 值得注意的是,根据官方文档,zsh-syntax-highlighting 插件需放在最后plugins=( git extract autojump zsh-autosuggestions zsh-syntax-highlighting)复制代码
4.「.zshrc」文件完整修改
Oh My Zsh 配置文件的完整修改结果,只有对配置文件进行如下修改,才能使上述配置生效。
# 设置字体模式以及配置命令行的主题,语句顺序不能颠倒POWERLEVEL9K_MODE='nerdfont-complete'ZSH_THEME="powerlevel9k/powerlevel9k"# 以下内容去掉注释即可生效:# 启动错误命令自动更正ENABLE_CORRECTION="true"# 在命令执行的过程中,使用小红点进行提示COMPLETION_WAITING_DOTS="true"# 启用已安装的插件plugins=( git extract fasd zsh-autosuggestions zsh-syntax-highlighting)复制代码
常用命令
下面总结 Oh My Zsh 配置相关的其他 bash 命令:
# 查看当前所用的 Shellecho $SHELL# 查看系统内已安装的 Shellcat /etc/shells# 用 GUI 文件管理器或编辑器打开指定的的文件或目录xdg-open fileOrDir复制代码