让zsh配置降到0门槛.而且它完全合营,固然bash的作用已经很有力

oh my zsh

shell的品类有无数种,linux下默许的是bash,尽管bash的出力已经很强劲,但对此以懒惰为美德的程序员来说,bash的唤醒意义不够强大,界面也不够炫,并非十全十美工具。

而zsh的职能最好强大,只是安插过于复杂,初阶唯有极客才在用。后来,有个穷极无聊的程序员可能是事实上看不下去广大猿友一贯只可以动用单调的bash,
于是他创办了一个名为oh-my-zsh的开源项目…

https://github.com/robbyrussell/oh-my-zsh

从此未来,只需求容易的设置配备,小白程序员们都可以用上高档大气上档次,狂拽炫酷吊炸天的oh my zsh

http://ohmyz.sh/

mac 预装了zsh ,但是很少有人直接切换过来使用此shell ,因为 zsh
的默许配置及其复杂繁琐,令人惊讶,直到有了oh-my-zsh那个开源项目,让zsh配置降到0门槛.而且它完全配合bash .

安装zsh

以centos7为例:

查阅系统当下利用的shell

$ echo $SHELL 
/bin/bash

翻看系统是或不是安装了zsh

$ cat /etc/shells 
/bin/sh
/bin/bash
/sbin/nologin
/usr/bin/sh
/usr/bin/bash
/usr/sbin/nologin
/bin/tcsh
/bin/csh

centos7默许情状下没设置zsh

用yum安装zsh

$ yum -y install zsh

查看shell列表

$ cat /etc/shells 
/bin/sh
/bin/bash
/sbin/nologin
/usr/bin/sh
/usr/bin/bash
/usr/sbin/nologin
/bin/tcsh
/bin/csh
/bin/zsh

切换shell为zsh

$ chsh -s /bin/zsh
Changing shell for root.
Shell changed.

重启服务器后,可应用reboot

重启后,查看当前shell

$ echo $SHELL 
/bin/zsh

地址:oh-my-zsh
终端: iTerm2

安装 oh my zsh

oh-my-zsh源码是置身github上,先确保您的机器上已安装了git

安装:

wget https://github.com/robbyrussell/oh-my-zsh/raw/master/tools/install.sh -O - | sh

事业有成界面:

  ____  / /_     ____ ___  __  __   ____  _____/ /_  
 / __ \/ __ \   / __ `__ \/ / / /  /_  / / ___/ __ \ 
/ /_/ / / / /  / / / / / / /_/ /    / /_(__  ) / / / 
\____/_/ /_/  /_/ /_/ /_/\__, /    /___/____/_/ /_/  
                        /____/                       ....is now installed!
Please look over the ~/.zshrc file to select plugins, themes, and options.

p.s. Follow us at https://twitter.com/ohmyzsh.

p.p.s. Get stickers and t-shirts at http://shop.planetargon.com.

接下去只需容易的配置,就足以享用oh-my-zsh的强大

1、查看系统中放到的二种shell

localhost:~ wangduo$ cat /etc/shells
# List of acceptable shells for chpass(1).
# Ftpd will not allow users to connect who are not using
# one of these shells.

/bin/bash
/bin/csh
/bin/ksh
/bin/sh
/bin/tcsh
/bin/zsh

命令:cat /etc/shells

主旨选用

oh-my-zsh有众多绝妙的主旨:

主旨列表

自己动用的主旨是ys

http://blog.ysmood.org/my-ys-terminal-theme/

http://blog.ysmood.org/my-ys-terminal-theme/

修改要旨:

$ vim ~/.zshrc

ZSH_THEME改成ys

ZSH_THEME="ys"

履新配备:

$ source ~/.zshrc   

2、克隆oh-my-zsh到本地

localhost:~ wangduo$ git clone git://github.com/robbyrussell/oh-my-zsh.git ~/.oh-my-zsh

命令:
git clone
git://github.com/robbyrussell/oh-my-zsh.git
~/.oh-my-zsh
前提是你得有装git

活动补齐插件

linux不少下令的参数很多,不能一一记住,常规的查阅手册又觉得慢。如若您也有那种不快,那么自己深信您会爱上oh-my-zsh

一图胜千言

机动补全的插件

incr.zsh
补全插件

下载此插件:

$ wget http://mimosa-pudica.net/src/incr-0.2.zsh   

将此插件放到oh-my-zsh目录的插件库下:

# root @ linux in ~/.oh-my-zsh/plugins/incr on git:master x [15:05:07] 
$ ls                                                                      root@linux
incr-0.2.zsh

~/.zshrc文本末尾加上

source ~/.oh-my-zsh/plugins/incr/incr*.zsh

立异配备:

$ source ~/.zshrc   

接下去你就足以感受到Your terminal never felt this good before

3、设置zsh为你的默认的shell

localhost:~ wangduo$ chsh -s /bin/zsh
Changing shell for wangduo.
Password for wangduo:

输入密码后切换shell为zsh,重启终端即可生效.

与vim的提示相争论的化解方案

运用自动补全插件可能会与vim的升迁功用相抵触,如会报以下错误:

$ vim t
_arguments:451: _vim_files: function definition file not found

不留余地办法:将~/.zcompdump*删除即可

$ rm -rf ~/.zcompdump*
$ exec zsh

迎接访问我的博客原文

4、查看当前shell

➜  ~ echo $SHELL
/bin/zsh

命令:echo $SHELL 查看当前正值利用的shell

5、 .oh-my-zsh 目录

➜  ~ cd .oh-my-zsh
➜  .oh-my-zsh git:(master) ls
LICENSE.txt  cache        lib          oh-my-    zsh.sh templates    tools
README.md    custom       log              plugins      themes

oh-my-zsh 安装后,它的布置在用户目录下的 .oh-my-zsh 目录下

6、.zshrc 隐藏文件

zsh 的计划首要汇聚在用户当前目录的.zshrc里,用 vim
或你欣赏的别样编辑器打开.zshrc

nano .zshrc

每一行的布局后面都有#号,若是想要配置生效,去掉 #号即可.

ZSH_THEME="robbyrussell"  //用来指定zsh主题
DISABLE_AUTO_UPDATE="true" //是否自动更新

oh my zsh
提供了数十种要旨,相关文书在~/.oh-my-zsh/themes目录下,你可以肆意选用,也得以编写主题知足自己的变态需要.

7、插件

oh my zsh
项目提供了完美的插件序列,相关的文书在~/.oh-my-zsh/plugins目录下,默许提供了100各类,大家可以按照自己的实际学习和办事条件接纳,想打听各种插件的成效,只要打开相关目录下的
zsh
文件看一下就知道了。插件也是在.zshrc里布署,找到plugins关键字,你就足以加载自己的插件了,系统默许加载
git ,你可以在背后增加内容,如下:

plugins=(rails git textmate ruby lighthouse)

上面不难介绍几个:

1、git:当您处在一个 git 受控的目录下时,Shell 会明确彰显 「git」和
branch,如上图所示,其它对 git 很多限令举行了简化,例如 gco=’git
checkout’、gd=’git diff’、gst=’git
status’、g=’git’等等,熟练应用可以大大缩小 git
的授命长度,命令内容可以参考~/.oh-my-zsh/plugins/git/git.plugin.zsh

2、textmate:mr可以创设 ruby 的框架项目,tm finename 能够用 textmate
打开指定文件。

3、osx:tab 增强,quick-look filename 可以一向预览文件,man-preview grep
可以生成 grep手册 的pdf 版本等。

4、autojump:zsh 和 autojump 的构成形成了 zsh
下最勇敢的插件,后天大家最首要说说这货。

率先安装autojump,要是你用 Mac,可以动用 brew 安装:

brew install autojump

把以下代码到场.zshrc:

[[ -s ~/.autojump/etc/profile.d/autojump.sh ]] && . ~/.autojump/etc/profile.d/autojump.sh

迄今停止,安装、配置、插件三位一体,终极 Shell
周密登场。退出终端会话重新登录,开头感受 zsh 的训疾如风!

8、使用 zsh

1、包容 bash,原来接纳 bash 的兄弟切换过来毫无压力,该咋用咋用。

2、强大的历史纪录成效,输入 grep 然后用上下箭头能够翻阅你执行的保有 grep
命令。

3、智能拼写修正,输入gtep mactalk * -R,系统会提醒:zsh: correct ‘gtep’
to ‘grep’ [nyae]? 比妹纸贴心吧,她们平素都是让你猜的……

4、各个补全:路径补全、命令补全,命令参数补全,插件内容补全等等。触发补全只要求按一下或两下
tab 键,补全项能够拔取 ctrl+n/p/f/b上下左右切换。比如你想杀掉 java
的长河,只需求输入 kill java + tab键,固然唯有一个 java 进度,zsh
会自动替换为经过的 pid,如若有八个则会并发接纳项供您接纳。ssh + 空格 +
四个tab键,zsh会列出所有访问过的主机和用户名展开补全

5、智能跳转,安装了autojump之后,zsh 会自动记录你拜访过的目录,通过 j +
目录名
可以直接举办目录跳转,而且目录名接济模糊匹配和机关补全,例如你拜访过hadoop-1.0.0目录,输入j
hado 即可正确跳转。j –stat 可以看您的野史路径库。

6、目录浏览和跳转:输入
d,即可列出你在那么些会话里拜访的目录列表,输入列表前的序号,即可间接跳转。

7、在当前目录下输入 .. 或 …
,或直接输入当前目录名都可以跳转,你照旧不再须要输入 cd 命令了。

8、通配符搜索:ls -l */.sh,可以递归突显当前目录下的 shell
文件,文件少时可以代表 find,文件太多就歇菜了。

9、更强的别名:请参见布局一节。

10、插件协理:请参考插件一节。

未完待续…