使用zsh的十大优点

优点1:完全兼容bash,之前bash下的使用习惯,shell脚本都可以完全兼容。

优点2:更强大的tab补全,当你切换目录敲两下tab,他可以列出当前目录下面的所有目录,并且可以使用键盘上下左右键来选择要进入的目录。

优点3:更智能的切换目录,比如你要进入一个很深的目录,like this /var/log/nginx/error/lastyear/may/first/monday, 用zsh可以这样输入cd /v/l/n/e/l/m/f/m,然后按tab即可补全整个路径。或者你实现知道当前目录名称,可以直接输入目录,即可进去目录。bash下cd - 可以切换到刚才进入的目录,在zsh下可以记录最近进去过的10个目录,只需要输入d,然后看到对应的0-9的目录,输入cd -数字,即可进入对应的目录。

优点4:命令选项补齐,比如输入yum,然后按tab,即可显示出yum都有哪些命令选项。

优点5:命令参数补齐,比如要kill一个进程,直接输入kill 进程名,会自动显示出进程的process id,

如果用ssh,则会输出最近用ssh 连接过的主机名,配合.zshrc还可以实现自定义ping命令自动补齐的命令参数。

zstyle ‘:completion:*:ping:*‘ hosts 192.168.1.{1,50,51,100,101} www.google.com

优点6:大小写字母自动更正,比如我们要cat一下README.txt,直接输入cat readme.txt TAB,之后zsh就会把小写的readme改成大写的。这个功能很好用哦。

优点7:有着丰富多彩的主题,如果你使用我的脚本安装oh-my-zsh的项目的话,在~/.oh-my-zsh/themes里会找到多达142个主题,看中哪个主题直接在~/.zshrc 里面更改:

ZSH_THEME="ys"

想要看其他的主题,可以看官网的这个地址:

https://github.com/robbyrussell/oh-my-zsh/wiki/External-themes

或者知乎上的这个讨论地址:

https://www.zhihu.com/question/33277508

然后我用的是这个主题:

优点8:更强大的alias命令,比如下面命令,当你在zsh环境下输入hello.py即可直接用vim打开文件编辑,一个tgz的文件即可自动解压缩。

alias -s py=vim
alias -s html=vim
alias -s tgz=‘tar zxvf‘

优点9:智能命令错误纠正,比如输入apt-gte install somefile,回车后,zsh会提示你是否纠正apt-gte 为apt-get?输入y,后即是正确命令执行,加上zshrc的profile的设置,按两下ESC,即可在命令的前面加上sudo。

##在命令前插入 sudo {{{
#定义功能
sudo-command-line() {
[[ -z $BUFFER ]] && zle up-history
[[ $BUFFER != sudo\ * ]] && BUFFER="sudo $BUFFER"
zle end-of-line                 #光标移动到行末
}
zle -N sudo-command-line
#定义快捷键为: [Esc] [Esc]
bindkey "\e\e" sudo-command-line
#}}}

优点10:

最最强大的优点是可以集成各种类型的插件,比如切换目录的可以继承autojump,想跳转到哪里,直接j 加目录名称,真的非常强大,非常便利,这个bash也可以使用。比如想要去nginx目录,可以直接输入j nginx,他会搜索使用率最高的nginx的路径,如果想要去/var/log/下的nginx呢,直接输入j v ng,效果如下:

在比如git插件,当你在一个git 仓库的时候你的zsh PS1是这样显示的,

会面会跟git 是master 还是 branch,然后的o 表示当前没有modify,也是最新的,比如我们更改一个文件,立马变成如下:

后面的o变成了x,代表你的本地仓库有更新。

在比如说你在你的仓库里新添加了几个文件,当你使用git add的时候多按几次TAB,你的新添加的文件就都补上了。

还有一个比较厉害的插件是history-substring-search, 强大到令人发指,首先你输入的每条命令他会给你记录下时间,并且在你的home目录创建.zsh_history/相对应的目录,并记录你在当前目录下用过的命令。

比如输入ansible,按上下箭头,即可搜索之前使用过的包括ansible的命令,而且是完全匹配,怎么说呢,就是比如说输入“ansi” 他就会匹配命令当中包含“ansi”的,如果输入“ansible all” 他就会匹配完全包含“ansible all”的命令,强大的地方在于当你输入ansible 上箭头比如找到这条命令ansible all -m shell -a ‘update‘,你可以左右光标符到m,然后上下翻命令,这时候搜索的就是"ansible all -"。也可以用histall | grep ansible的方式:

zsh还有很多强大的plugin值得去研究一下,比如集成docker的,aws的,go,python等等。还有大部分不习惯centos7的systemctl命令的,有个systemd的插件值得一用。

# root at shanker in ~/.oh-my-zsh/plugins/systemd on git:master o [7:17:36]
# less systemd.plugin.zsh 
user_commands=(
  list-units is-active status show help list-unit-files
  is-enabled list-jobs show-environment cat)
sudo_commands=(
  start stop reload restart try-restart isolate kill
  reset-failed enable disable reenable preset mask unmask
  link load cancel set-environment unset-environment
  edit)
for c in $user_commands; do; alias sc-$c="systemctl $c"; done
for c in $sudo_commands; do; alias sc-$c="sudo systemctl $c"; done
alias sc-enable-now="sc-enable --now"
alias sc-disable-now="sc-disable --now"
alias sc-mask-now="sc-mask --now"

如果大家觉得好用,可以用我写的自动化安装脚本,只支持centos like和ubuntu like系统哦。

https://github.com/sangrealest/shell/blob/master/init_zsh.sh

或者参考这篇文章:

http://shanker.blog.51cto.com/1189689/1737213

欢迎补充!

时间: 2024-10-10 16:10:27

使用zsh的十大优点的相关文章

Office Word 2013 的十大优点1

Office Word 2013 的十大优点 1.发现改进的搜索和导航体验. 利用 Word 2013,可更加便捷地查找信息.现在,利用新增的改进查找体验,您可以按照图形.表.脚注和注释来查找内容.改进的导航窗格为您提供了文档的直观表示形式,这样就可以对所需内容进行快速浏览.排序和查找. 2.与他人同步工作. Word 2013 重新定义了人们一起处理某个文档的方式.利用共同创作功能,您可以编辑论文,同时与他人分享您的思想观点.1 对于企业和组织来说,与 Office Communicator

Office Word 2013 的十大优点

Office Word 2013 的十大优点 发现改进的搜索和导航体验. 利用 Word 2013,可更加便捷地查找信息.现在,利用新增的改进查找体验,您可以按照图形.表.脚注和注释来查找内容.改进的导航窗格为您提供了文档的直观表示形式,这样就可以对所需内容进行快速浏览.排序和查找. 与他人同步工作. Word 2013 重新定义了人们一起处理某个文档的方式.利用共同创作功能,您可以编辑论文,同时与他人分享您的思想观点.1 对于企业和组织来说,与 Office Communicator 的集成,

数据挖掘十大经典算法

一. C4.5  C4.5算法是机器学习算法中的一种分类决策树算法,其核心算法是ID3 算法.   C4.5算法继承了ID3算法的优点,并在以下几方面对ID3算法进行了改进: 1) 用信息增益率来选择属性,克服了用信息增益选择属性时偏向选择取值多的属性的不足: 2) 在树构造过程中进行剪枝: 3) 能够完成对连续属性的离散化处理: 4) 能够对不完整数据进行处理. C4.5算法有如下优点:产生的分类规则易于理解,准确率较高.其缺点是:在构造树的过程中,需要对数据集进行多次的顺序扫描和排序,因而导

36条教育金规解读第1条:让孩子变笨的十大高招(一)

此前,网上疯传王金战教育理念33条,感觉有些条款与本人理念不符,这也不是出自本人之手,但我非常感谢网友对我的关注和认可.受此事启发,我将工作30多年来的教育感悟进行了认真梳理,总结出了36条教育金规,于2014年6月14日在我的博客发布,给很多热身教育事业的朋友们带来了启发.   今天开始,我会抽空对每一条进行一些解读,希望给大家带来一些新的帮助.  第1条.    使孩子变笨的十大高招:过份苛责.处处干涉.追求完美.看重高分.父母不和.不准发问. 事事代劳.限制爱好.鼓励听话.拔苗助长. 关于

十大Intellij IDEA快捷键

Intellij IDEA中有很多快捷键让人爱不释手,stackoverflow上也有一些有趣的讨论.每个人都有自己的最爱,想排出个理想的榜单还真是困难.以前也整理过Intellij的快捷键,这次就按照我日常开发时的使用频率,简单分类列一下我最喜欢的十大快捷-神-键吧. 1 智能提示 Intellij首当其冲的当然就是Intelligence智能!基本的代码提示用Ctrl+Space,还有更智能地按类型信息提示Ctrl+Shift+Space,但因为Intellij总是随着我们敲击而自动提示,所

数据挖掘领域十大经典算法

国际权威的学术组织the IEEE International Conference on Data Mining (ICDM) 早前评选出了数据挖掘领域的十大经典算法:C4.5, k-Means, SVM, Apriori, EM, PageRank, AdaBoost, kNN, Naive Bayes, and CART. 不仅仅是选中的十大算法,其实参加评选的18种算法,实际上随便拿出一种来都可以称得上是经典算法,它们在数据挖掘领域都产生了极为深远的影响. 1.C4.5 C4.5算法是机

十大数据挖掘算法

国际权威的学术组织the IEEE International Conference on Data Mining (ICDM) 2006年12月评选出了数据挖掘领域的十大经典算法:C4.5, k-Means, SVM, Apriori, EM, PageRank, AdaBoost, kNN, Naive Bayes, and CART.不仅仅是选中的十大算法,其实参加评选的18种算法,实际上随便拿出一种来都可以称得上是经典算法,它们在数据挖掘领域都产生了极为深远的影响.1. C4.5C4.5

GPU计算的十大质疑—GPU计算再思考

http://blog.csdn.NET/babyfacer/article/details/6902985 原文链接:http://www.hpcwire.com/hpcwire/2011-06-09/top_10_objections_to_gpu_computing_reconsidered.html作者:Dr. Vincent Natoli, Stone Ridge Technology (http://www.stoneridgetechnology.com/ )译者:陈晓炜(转载请注

数据挖掘十大算法--Apriori算法

一.Apriori 算法概述 Apriori 算法是一种最有影响力的挖掘布尔关联规则的频繁项集的 算法,它是由Rakesh Agrawal 和RamakrishnanSkrikant 提出的.它使用一种称作逐层搜索的迭代方法,k- 项集用于探索(k+1)- 项集.首先,找出频繁 1- 项集的集合.该集合记作L1.L1 用于找频繁2- 项集的集合 L2,而L2 用于找L2,如此下去,直到不能找到 k- 项集.每找一个 Lk 需要一次数据库扫描.为提高频繁项集逐层产生的效率,一种称作Apriori