龙空技术网

详解Zsh和oh my zsh

程序员技术分享 343

前言:

如今各位老铁们对“centos7装ohmyzsh”大体比较关心,小伙伴们都想要学习一些“centos7装ohmyzsh”的相关知识。那么小编也在网络上搜集了一些有关“centos7装ohmyzsh””的相关知识,希望各位老铁们能喜欢,我们快快来学习一下吧!

Zsh(Z-shell)是一款用于交互式使用的shell,也可以作为脚本解释器来使用。其包含了 bash,ksh,tcsh 等其他shell中许多优秀功能,也拥有诸多自身特色。

Zsh 安装

先看下你的 CentOS 支持哪些 shell:cat /etc/shells,正常结果应该是这样的:

/bin/sh/bin/bash/sbin/nologin/bin/dash/bin/tcsh/bin/csh

CentOS 安装:

sudo yum install -y zsh

在检查下系统的 shell:cat /etc/shells,你会发现多了一个:/bin/zsh

使用 Zsh 扩展集合:oh-my-zsh

oh-my-zsh 帮我们整理了一些常用的 Zsh 扩展功能和主题:,我们无需自己去捣搞 Zsh,直接用 oh-my-zsh 就足够了,如果你想继续深造的话那再去弄。 安装 oh-my-zsh(这个过程可能会有点慢,或者需要重试几次):

wget sh -c "$(curl -fsSL )"

整个过程效果如下图:

在以 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 现在你关掉终端或是重新连上 shell,现在开头是一个箭头了,如下图:

插件推荐

启用 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 是安装的。

wd

简单地讲就是给指定目录映射一个全局的名字,以后方便直接跳转到这个目录,比如编辑配置文件,添加上 wd 的名字:vim /root/.zshrc 我常去目录:/opt/setups,每次进入该目录下都需要这样:cd /opt/setups 现在用 wd 给他映射一个快捷方式:cd /opt/setups ; wd add setups 以后我在任何目录下只要运行:wd setups 就自动跑到 /opt/setups 目录下了 插件官网:

zsh-syntax-highlighting

这个插件会对终端命令高亮显示,比如正确的拼写会是绿色标识,否则是红色,另外对于一些shell输出语句也会有高亮显示,算是不错的辅助插件 插件官网: 安装,复制该命令:’git clone ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-syntax-highlighting’ 编辑:vim ~/.zshrc,找到这一行,后括号里面的后面添加:plugins=( 前面的一些插件名称 zsh-syntax-highlighting) 刷新下配置:source ~/.zshrc

主题

很多人喜欢捣搞这个,捣搞主题和插件思路一样 oh-my-zsh 的主题列表介绍(还是太长了): 我们看下安装 oh-my-zsh 的时候,自带有多少个:ls -l /root/.oh-my-zsh/themes |grep “^-“|wc -l,我这边得到的结果是:140编辑配置文件:vim /root/.zshrc,找到下图的地方,怎么安装,原作者注释写得很清楚了,如果你没特别的喜欢那就选择随机吧。

配置好新主题需要重新连接 shell 才能看到效果

其他

命令别名:在命令行中输入 alias 可以查看已经有的命令别名 自己新增一些别名,编辑文件:vim ~/.zshrc,在文件加入下面格式的命令,比如以下是网友提供的一些思路:

alias cls='clear'alias ll='ls -l'alias la='ls -a'alias grep="grep --color=auto"alias -s html='vim' # 在命令行直接输入后缀为 html 的文件名,会在 Vim 中打开alias -s rb='vim' # 在命令行直接输入 ruby 文件,会在 Vim 中打开alias -s py='vim' # 在命令行直接输入 python 文件,会用 vim 中打开,以下类似alias -s js='vim'alias -s c='vim'alias -s java='vim'alias -s txt='vim'alias -s gz='tar -xzvf' # 在命令行直接输入后缀为 gz 的文件名,会自动解压打开alias -s tgz='tar -xzvf'alias -s zip='unzip'alias -s bz2='tar -xjvf'
差异

我们现在增加系统变量在:/etc/profile 后,输入命令:source /etc/profile 之后,重启服务器发现刚刚的系统变量现在没效果。 解决办法:vim ~/.zshrc,在该配置文件里面增加一行:source /etc/profile,然后刷新 zsh 的配置:source ~/.zshrc。差异 更多使用方法大家自己再玩玩!

标签: #centos7装ohmyzsh