(转)生活小贴士: 更好的shell-zsh
原作者:解解(我适当改了一些)
最近把自用的Ubuntu平台上的shell改成了zsh, zsh本身兼容Bash, 还拥有有许多Bash没有的强大的功能(比如支持一堆功能强大的plugin和漂亮的主题,强大的tab补全和纠错,比Bash更好的历史记忆等), 然而zsh本身的配置对普通的用户并不友好, 但是某个大神发明了一个叫oh-my-zsh的神奇玩意, 有了它, 我们可以事半功倍.
安装
安装完成以后,用chsh -s /bin/zsh
把zsh变成默认shell,
插件
在.zshrc中 plugins=()
可以选择启用的插件,插件名写入括号, 用空格来分隔.
oh-my-zsh中自带的插件十分丰富, 在这里 可以找到它们的介绍, 有些十分有用的插件oh-my-zsh中没有自带, 我们可以把下载来的插件放在 ~/.oh-my-zsh/custom/plugins
目录中。
比如我们要按照一个叫zsh-syntax-highlighting的插件(这个插件可以提示输入的命令是否正确, 正确的命令会显示成绿色, 而错误的会显示成红色, 由于zsh强大的命令纠错功能, 输入的命令错误的话可以直接狂按tab来修正), 可以直接用git命令把它从github拷贝到插件目录中:
要加强zsh的补全功能实现tab自动纠错, 我们把下面两行文字加入 oh-my-zsh/lib/completion.zsh
中
常用插件:
- zsh-syntax-highlighting
- 很好的插件, 功能前面已经说过了
- theme
- 在终端中输入
theme
切换主题 - colorize
- 让cat支持高亮
- history history-substring-search per-directory-history
- 这几个插件是增强历史记录功能的, 试试看输入sudo后按上方向键会有什么奇异的效果?
- colored-man
- 让手册也变成彩色的
- autojump
- 智能目录跳转:
autojump + 目录名
可以直接进行目录跳转,而且目录名支持模糊匹配和自动补全。需要先安装autojump,运行sudo apt-get install autojump
- sudo
- 输入一段命令后按两次ESC会自动在命令前面加上sudo