# Zsh 入门 ## 本文前提 - CentOS 6.7 64 bit - root 用户 ## Zsh 介绍 - Zsh 兼容 Bash,据传说 99% 的 Bash 操作 和 Zsh 是相同的 - Zsh 官网: - 先看下你的 CentOS 支持哪些 shell:`cat /etc/shells`,正常结果应该是这样的: ``` bash /bin/sh /bin/bash /sbin/nologin /bin/dash /bin/tcsh /bin/csh ``` - 默认 CentOS / Ubuntu / Mac 系统用的是 Bash,倒也不是说 Bash 不好,而是说我们有更好的选择。 ## Zsh 安装 - CentOS 安装:`sudo yum install -y zsh` - Ubuntu 安装:`sudo apt-get install -y zsh` - 在检查下系统的 shell:`cat /etc/shells`,你会发现多了一个:`/bin/zsh` ## 使用 Zsh 扩展集合:oh-my-zsh - oh-my-zsh 帮我们整理了一些常用的 Zsh 扩展功能和主题: - 我们无需自己去捣搞 Zsh,直接用 oh-my-zsh 就足够了,如果你想继续深造的话那再去弄。 - 先安装 git:`sudo yum install -y git` - 安装 oh-my-zsh:`wget https://raw.github.com/robbyrussell/oh-my-zsh/master/tools/install.sh -O - | sh` - 整个过程效果如下图: - ![oh-my-zsh 安装](images/Zsh-a-1.jpg) - 在以 root 用户为前提下,oh-my-zsh 的安装目录:**/root/.oh-my-zsh** - 在以 root 用户为前提下,Zsh 的配置文件位置:**/root/.zshrc** - 为 root 用户设置 zsh 为系统默认 shell:`chsh -s /bin/zsh root` - 如果你要重新恢复到 bash:`chsh -s /bin/bash root` - 现在重启下系统:`reboot`,重启完你就可以看到你连接上 shell 效果变了,现在开头是一个箭头了,如下图: - ![oh-my-zsh 安装](images/Zsh-b-1.jpg) ## Zsh 配置 ### 插件 - 启用 oh-my-zsh 中自带的插件。 - oh-my-zsh 的插件列表介绍(太长了,用源码不精准地统计下有 149 个): - 我们看下安装 oh-my-zsh 的时候自带有多少个插件:`ls -l /root/.oh-my-zsh/plugins |grep "^d"|wc -l`,我这边得到的结果是:211 - 编辑配置文件:`vim /root/.zshrc`,找到下图的地方,怎么安装,原作者注释写得很清楚了,别装太多了,默认 git 是安装的。 - ![oh-my-zsh 安装](images/Zsh-c-1.jpg) - 插件推荐: - `wd` - 简单地讲就是给指定目录映射一个全局的名字,以后方便直接跳转到这个目录,比如: - 编辑配置文件,添加上 wd 的名字:`vim /root/.zshrc` - 我常去目录:**/opt/setups**,每次进入该目录下都需要这样:`cd /opt/setups` - 现在用 wd 给他映射一个快捷方式:`cd /opt/setups ; wd add setups` - 以后我在任何目录下只要运行:`wd setups` 就自动跑到 /opt/setups 目录下了 - 插件官网: - `autojump` - 这个插件会记录你常去的那些目录,然后做一下权重记录,你可以用这个命令看到你的习惯:`j --stat`,如果这个里面有你的记录,那你就只要敲最后一个文件夹名字即可进入,比如我个人习惯的 program:`j program`,就可以直接到:`/usr/program` - 插件官网: - 官网插件下载地址: - 插件下载:`wget https://github.com/downloads/wting/autojump/autojump_v21.1.2.tar.gz` - 解压:`tar zxvf autojump_v21.1.2.tar.gz` - 进入解压后目录并安装:`cd autojump_v21.1.2/ ; ./install.sh` - 再执行下这个:`source /etc/profile.d/autojump.sh` - 编辑配置文件,添加上 autojump 的名字:`vim /root/.zshrc` ### 主题 - 很多人喜欢捣搞这个 ╮( ̄▽ ̄)╭ - 捣搞主题和插件思路一样 - oh-my-zsh 的主题列表介绍(还是太长了): - 我们看下安装 oh-my-zsh 的时候,自带有多少个:`ls -l /root/.oh-my-zsh/themes |grep "^-"|wc -l`,我这边得到的结果是:140 - 我个人品味地推荐的是(排名有先后): - `ys` - `agnoster` - `avit` - `blinks` - 编辑配置文件:`vim /root/.zshrc`,找到下图的地方,怎么安装,原作者注释写得很清楚了,如果你没特别的喜欢那就选择随机吧。 - ![oh-my-zsh 安装](images/Zsh-d-1.jpg) - 配置好新主题需要重新连接 shell 才能看到效果 ## 一些人性化功能 - 呃,这个其实可以不用讲的,你自己用的时候你自己会发现的,各种便捷,特别是用 Tab 多的人一定会有各种惊喜的。 ## 资料 - - - - - - - - - - - -