什么是ZSH,为什么要用它代替Bash?
ZSH也称为Z Shell,是Bourne Shell(sh)的扩展版本,具有许多新功能,并支持插件和主题。由于ZSH与Bash基于相同的shell,因此ZSH具有许多相同的功能,并且切换起来非常容易。
那为什么要使用它呢?
ZSH有太多功能要在这里列出,对Bash进行了一些小的改进,但是其中一些主要功能是:
自动cd:只需输入目录名称
递归路径扩展:例如,/ u / lo / b扩展为/ usr / local / bin
拼写更正和大致完成:如果我们在输入目录名称时犯了一个小错误,ZSH将为我们修复它
插件和主题支持:ZSH包括许多不同的插件框架
插件和主题支持可能是ZSH的最酷功能,这就是我们将在此处重点介绍的功能。
安装ZSH
如果我们使用的是macOS,并且已安装Homebrew(应该这样做),则可以使用单个命令安装ZSH:
brew install zsh
同样对于macOS用户,我们可能应该使用iTerm而不是本机终端,因为它具有更好的颜色支持(以及许多其他功能)。
如果我们使用的是Linux,则命令可能因发行版而异,但它应该是程序包管理器中的默认程序包。如果遇到问题,可以查阅本指南。
如果我们使用的是Windows,则可能甚至没有Bash。我们可以按照本指南进行设置并启用ZSH。
安装Oh-My-Zsh
Oh-My-Zsh是ZSH最受欢迎的插件框架,它还带有许多内置插件和主题。还有其他几个插件框架,包括Antigen,它是ZSH的完整软件包管理器,但是Oh-My-Zsh内置了许多插件,并且可以很好地完成工作。
Oh-My-Zsh有一个可以运行的简单安装脚本:
sh -c "$(curl -fsSL https://raw.githubusercontent.com/robbyrussell/oh-my-zsh/master/tools/install.sh)"
从那里,我们可以通过将插件添加到~目录中的.zshrc文件中来启用和禁用插件。
我们可以在Oh-My-Zsh存储库中获得插件的完整列表。
主题
有很多主题可以讨论,但是powerlevel9k到目前为止是最酷的。它添加了一个右对齐的信息框,与git和命令历史记录集成,令人难以置信的自定义,并将其全部包装在基于vim的电力线插件的漂亮界面中。
我们可能要在macOS或者任何24位彩色的终端上使用iTerm,以充分利用powerlevel9k(或者任何ZSH主题)。
要设置powerlevel9k(如果已安装Oh-My-Zsh),只需将存储库克隆到.oh-my-zsh自定义主题文件夹中:
git clone https://github.com/bhilburn/powerlevel9k.git ~/.oh-my-zsh/custom/themes/powerlevel9k
然后,我们需要在.zshrc中启用它:
ZSH_THEME="powerlevel9k/powerlevel9k"
之后,获取.zshrc,然后我们应该会看到所做的更改。
如果需要,可以通过在.zshrc中定义POWERLEVEL9K_LEFT_PROMPT_ELEMENTS来自定义默认提示。这是我的,提示很少:
POWERLEVEL9K_LEFT_PROMPT_ELEMENTS=(vcs dir rbenv) POWERLEVEL9K_RIGHT_PROMPT_ELEMENTS=(root_indicator background_jobs status load)
我们可以在存储库中找到有关powerlevel9k的完整文档。