使用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
不过如果自行修改了项目内容的话,只能进行手动更新了。