使用Zsh

刚接触Linux的时候,就知道有Zsh这个东西,但是一直没有具体的了解过。前几个月看到池院长的MacTalk中的介绍,才了解到这是一个被称为终极Shell的玩意,优点大家都说的很多了:

由于我大部分时间都是在和服务器打交道,一方面对个人Shell环境要求不高,一方面比较喜欢通用的东西,也就没用Zsh。最近看到了一个很酷的Web终端,趁着周末,忍不住试试Zsh。

Zsh的安装和配置

/etc/shells下面保存了系统所有可用Shell名称,Mac自带Zsh,在Mavericks上其版本是5.0.2,够新了可以直接用,Linux上可以使用yum install zsh进行安装。 Zsh的配置非常复杂,不过神不是万能的,github无所不能,oh-my-zsh这种项目真是我等小白的福音,直接使用这套配置:

$ git clone git://github.com/robbyrussell/oh-my-zsh.git ~/.oh-my-zsh
$ cp ~/.oh-my-zsh/templates/zshrc.zsh-template ~/.zshrc

这时就可以使用zsh命令(-v效果更佳哦)开始体验了,如果没啥问题,切换过去吧:

$ chsh -s /bin/zsh

可以在初期随机主题,碰上喜欢的再固定,默认只启用git插件,也可以多试试。 注: ~/.bashrc~/.bash_profile/etc/bashrc的内容只有bash使用,需根据情况转移到.zshrc中。 以后使用上遇到的问题会在这里记录。

使用autojump

autojump能够根据目录访问历史进行智能跳转,支持模糊匹配和自动补全。安装命令:

$ git clone git://github.com/joelthelion/autojump.git
$ cd autojump && ./autojump.py

由于oh-my-zsh的autojump插件(也就是几个source语句)有问题,因此直接在.zshrc中添加以下语句:

[[ -s ~/.autojump/etc/profile.d/autojump.sh ]] && source ~/.autojump/etc/profile.d/autojump.sh

重新登录后即可使用,autojump -s可以查看收录的目录和权重,使用j path进行跳转。

oh-my-zsh更新

个人配置都是放在.zshrc中的,~/.oh-my-zsh作为一个git项目可以直接手动更新,也可以使用自带的更新脚本:

zsh ~/.oh-my-zsh/tools/upgrade.sh

不过如果自行修改了项目内容的话,只能进行手动更新了。

Loading Disqus comments...
Table of Contents