zsh+on-my-zsh配置教程指南(程序员必备)【已备份】
本文以CentOS 7/Mac 为例,介绍zsh的配置使用教程。
准备
查看当前环境shell
echo $SHELL
<!-- more -->
查看系统自带哪些shell
cat /etc/shells
安装zsh
yum install zsh # CentOS brew install zsh # mac安装
将zsh设置为默认shell
chsh -s /bin/zsh # CentOS
# Mac如下 # 在 /etc/shells 文件中加入如下一行 /usr/local/bin/zsh # 接着运行 chsh -s /usr/local/bin/zsh
可以通过echo $SHELL查看当前默认的shell,如果没有改为/bin/zsh,那么需要重启shell。
oh-my-zsh
配置zsh是一件麻烦的事儿,爱折腾的程序猿怎么可能忍受?!于是,oh-my-zsh出现了,有了这个东东,zsh配置起来就方便多了!
安装oh-my-zsh
有若干安装方式,介绍三种:
1.自动安装
wget https://github.com/robbyrussell/oh-my-zsh/raw/master/tools/install.sh -O - | sh
2.手动安装
git clone git://github.com/robbyrussell/oh-my-zsh.git ~/.oh-my-zsh cp ~/.oh-my-zsh/templates/zshrc.zsh-template ~/.zshrc
3.真-手动安装
- 在oh-my-zsh的github主页,手动将zip包下载下来。
- 将zip包解压,拷贝至
~/.oh-my-zsh目录。此处省略拷贝的操作步骤。 - 执行
cp ~/.oh-my-zsh/templates/zshrc.zsh-template ~/.zshrc
三选一即可,适合各种环境下的安装,然后需要source ~/.zshrc将配置生效。以下修改了.zshrc文件之后,都执行一下这个命令。
zsh主题
通过如下命令可以查看可用的Theme:
# ls ~/.oh-my-zsh/themes
如何修改zsh主题呢?
编辑~/.zshrc文件,将ZSH_THEME="candy",即将主题修改为candy。我采用的steeef。
zsh扩展
在~/.zshrc中找到plugins关键字,就可以自定义启用的插件了,系统默认加载git。
git插件
命令内容可以参考cat ~/.oh-my-zsh/plugins/git/git.plugin.zsh。
常用的:
gapa git add --patch gc! git commit -v --amend gcl git clone --recursive gclean git reset --hard && git clean -dfx gcm git checkout master gcmsg git commit -m gco git checkout gd git diff gdca git diff --cached gp git push grbc git rebase --continue gst git status gup git pull --rebase
完整列表:https://github.com/robbyrussell/oh-my-zsh/wiki/Plugin:git
extract
解压文件用的,所有的压缩文件,都可以直接x filename,不用记忆参数
当然,如果你想要用tar命令,可以使用tar -加tab键,zsh会列出参数的含义。
autojump
按照官方文档介绍,需要使用如下命令安装,而不是一些博客中的介绍:
yum install autojump-zsh # CentOS brew install autojump # Mac
CentOS安装好之后,需要在~/.zshrc中配置一下,除了在plugins中增加autojump之外,还需要添加一行:
[[ -s ~/.autojump/etc/profile.d/autojump.sh ]] && . ~/.autojump/etc/profile.d/autojump.sh
安装好之后,记得source ~/.zshrc,然后你就可以通过j+目录名快速进行目录跳转。支持目录名的模糊匹配和自动补全。
j -stat:可以查看历史路径库
zsh-autosuggestions
git clone git://github.com/zsh-users/zsh-autosuggestions $ZSH_CUSTOM/plugins/zsh-autosuggestions
在 ~/.zshrc 中配置
plugins=(其他的插件 zsh-autosuggestions)
因为箭头→不太方便,在.zshrc中自定义补全快捷键为逗号,但是又一次遇到了需要输入逗号的情况,所以,并不太推荐如下修改:
bindkey ',' autosuggest-accept
zsh-syntax-highlighting
git clone https://github.com/zsh-users/zsh-syntax-highlighting.git ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-syntax-highlighting~/.zshrc文件中配置:
plugins=(其他的插件 zsh-syntax-highlighting)
git-open
git-open插件可以在你git项目下打开远程仓库浏览项目。
git clone https://github.com/paulirish/git-open.git $ZSH_CUSTOM/plugins/git-open
bat
bat 代替 catcat 某个文件,可以在终端直接输出文件内容,bat 相比 cat 增加了行号和颜色高亮