开始用zsh

装arch的时候搜到了一个博客 被这位先生用的zsh吸引 开始下zsh玩

http://bucunzai.net/2011/03/zsh-rocks/

安装:

1
sudo pacman -S zsh

用github上的oh_my_zsh进行配置:https://github.com/robbyrussell/oh-my-zsh

1
2
3
4
5
git clone git://github.com/robbyrussell/oh-my-zsh.git ~/.oh-my-zsh

cp ~/.zshrc ~/.zshrc.orig

cp ~/.oh-my-zsh/templates/zshrc.zsh-template ~/.zshrc

把zsh作为默认shell:

1
chsh -s /bin/zsh

其它的一些介绍:

当然先是wiki: (https://wiki.archlinux.org/index.php/Zsh)

http://www.pcjx.net/Linux/SHELL/215262.html

http://linuxfinances.info/info/unixshells.html

http://friedcpu.wordpress.com/2007/07/24/zsh-the-last-shell-youll-ever-need/

主题用了bira,在https://github.com/robbyrussell/oh-my-zsh/wiki/themes 可以找到很多

Set ZSH_THEME in ~/.zshrc to bira

一些简单小技巧:http://www.ibm.com/developerworks/cn/linux/shell/z/

可以使用命令 “bindkey -e” 来启用 Emacs 绑定。这些键顺序的示例包括 Control-A(跳至行首)和 Control-K(删除到行尾)。也可以使用 “bindkey -v” 命令来绑定 Vi。

多行编辑模式可以编辑短小shell脚本,Cursor-Up 或者Control-P with Emacs bindings 都可以滚动浏览上以前输过的命令。

还有个有用的是 “!!”,它可执行前一命令; “^old^new”,它将前一个命令中的 “old” 替换成 “new” 之后再执行该命令。尤其适用于输错的时候,或仅仅想稍微修改一下命令。

TAB键就不说了,值得一提的是 “which-command” 函数在TAB一起很有用。在完成之后,或者输入命令后,运行缺省设置绑定到 Esc-?(按下然后松开 Escape,然后按下 “?”)的函数。它简单地告诉您 命令在哪里,就好象在命令后输入 “which” 一样。

还有就是 “compctl”, “compctl” 最有用的功能之一,是基于上下文对文件名的完成进行过滤。在给定的情形下,我们可以减少相关匹配的数量,从而可增加唯一匹配的机会,因此我们就可以完整得到整个输入的内容。使用例子:

zsh% compctl -g '*.java' javac

    --restrict matches when command is javac

zsh% javac T-TAB

zsh% javac TestProgram.java

这是刚开始试过的一点,之后慢慢继续学习,比较有意思的也会继续整理过来…这点就足够跟同学神马的装一阵子B了哈哈,不过好好玩才是正道。