最近在研究终端工具的时候,发现人家的终端可以输出各种彩色文字,还有各种提示,自己就算用了炫酷的Tabby也无法实现。后来发现需要在Linux上安装OhMyZsh才行,今天给大家介绍下这款功能强大,插件丰富的工具!

SpringBoot实战电商项目mall(50k+star)地址:github.com/macrozheng/…

OhMyZsh简介

OhMyZsh是一款开源工具,可以用于管理Zsh(Linux命令解释器的一种)的配置。使用OhMyZsh可以让你看起来像有10年工作经验的程序员,OhMyZsh有几百种插件可以供你使用,还有各种炫酷的主题。OhMyZsh非常流行,在Github上已经有137K+Star!

Zsh简介

上面提到了Zsh,它是Linux命令解释器的一种,CentOS默认的命令解释器是Bash,常用的还有sh、csh和tcsh。对比默认的Bash,Zsh的功能更强大,拥有大量插件,可以实现更强大的命令补全,命令高亮等功能。

安装

OhMyZsh其实是Zsh的一种管理工具,在安装OhMyZsh之前我们得先安装Zsh。

安装Zsh

  • 安装Zsh的方法很多,使用yum来安装很方便,不过OhMyZsh官方建议安装5.0.8以上版本,我们先来看下yum中的zsh版本号;
yum info zsh
复制代码
  • 如果你的版本号大于5.0.8可以使用yum来安装,使用如下命令即可,如果小于可以使用源码来安装;
yum -y install zsh
复制代码
  • 源码安装需要先下载Zsh的源码包,下载地址:zsh.sourceforge.io/Arc/source.…
  • 先把下载好的源码包放到指定目录,然后使用如下命令进行解压安装;
# 安装依赖
yum -y install gcc perl-ExtUtils-MakeMaker
yum -y install ncurses-devel
# 解压
tar xvf zsh-5.8.tar.xz
cd zsh-5.8
# 检查安装环境依赖是否完善
./configure
# 编译并安装
make && make install
复制代码
  • 安装完成后可以使用如下命令查看Zsh的路径;
whereis zsh
复制代码
  • 再把Zsh的路径添加到/etc/shells文件中去,在这里我们可以看到系统支持的所有命令解释器;
vim /etc/shells 
# 添加内容如下
/usr/local/bin/zsh
复制代码
  • 最后查看下Zsh版本号,用于检测Zsh是否安装成功了。
zsh --version
复制代码

安装OhMyZsh

  • 接下来我们来安装OhMyZsh,直接使用如下命令安装;
sh -c "$(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"
复制代码
  • 如果遇到下载不下来的情况,可以先创建一个install.sh文件,然后从Github上复制该文件内容,再使用如下命令安装:
# install.sh 地址:https://github.com/ohmyzsh/ohmyzsh/blob/master/tools/install.sh
./install.sh
复制代码
  • 安装完成后会提示你修改Linux使用的默认shell,使用如下命令可查看修改默认shell;
# 查看当前在使用的shell
echo $SHELL
# 也可以使用下面命令自行修改默认shell
chsh -s $(which zsh)
复制代码
  • 安装成功后配置文件为.zshrc,安装目录为.oh-my-zsh,安装目录结构如下。

使用

OhMyZsh的功能强大之处在于它的插件很丰富,界面炫酷在于它的主题也很丰富,下面我们分别来介绍下。

主题修改

  • OhMyZsh的主题非常丰富,自带主题都在themes文件夹中;
  • 修改主题只需修改配置文件.zshrc的ZSH_THEME属性即可,下面我们把主题改为af-magic;
vim ~/.zshrc
# 修改如下内容
ZSH_THEME="af-magic"
# 刷新配置,每次修改后都需要
source ~/.zshrc
复制代码
  • 修改成功后主题效果如下。

使用插件

OhMyZsh光自带插件就有300多个,还有很多第三方插件,可见插件生态非常丰富,下面我们来介绍几个好用的插件。

OhMyZsh的自带插件都在plugins目录下,统计了下,多达305个。

zsh-syntax-highlighting

平时我们输入Linux命令的时候,只有在执行的时候才知道输错命令了,这款插件可以实时检测命令是否出错。

  • 下载插件到指定目录,使用如下命令即可;
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;
plugins=(
        git
        zsh-syntax-highlighting
)
复制代码
  • 接下来再输入命令时就有高亮提示了,正确命令会显示绿色。

zsh-autosuggestions

自动补全插件,输入命令后会自动提示相关命令,使用方向键→可以实现自动补全。

  • 下载插件到指定目录,使用如下命令即可;
git clone https://github.com/zsh-users/zsh-autosuggestions ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-autosuggestions
复制代码
  • 然后修改配置文件.zshrc,在plugins中添加插件zsh-autosuggestions;
  • 此时我们输入命令前缀就会直接提示命令,然后按方向键→就可以实现自动补全了。

zsh-history-substring-search:

可以搜索命令历史的插件,使用Ctrl+R快捷键触发,模糊搜索历时使用的命令。

  • 下载插件到指定目录,使用如下命令即可;
git clone https://github.com/zsh-users/zsh-history-substring-search ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-history-substring-search
复制代码
  • 然后修改配置文件.zshrc,在plugins中添加插件zsh-history-substring-search;
  • 接下来我们就可以通过Ctrl+R快捷键触发,然后进行命令搜索补全了。

docker

自带插件,可以实现docker命令补全和自动提示。

  • 作为自带插件无需下载,直接修改配置文件.zshrc,在plugins中添加插件docker;
  • 当我们输入docker开头的命令时,使用Tab键可以出现提示并自动补全。

git

自带插件,添加了很多git的快捷命令。

  • 直接修改配置文件.zshrc,在plugins中添加插件git;
  • 该插件对于Git命令提供了非常多的快捷使用方式,比如下面的常用命令;

快捷别名

命令

g

git

gcl

git clone

ga

git add

gc

git commit

ggp

git push

ggl

git pull

gst

git status

gb

git branch

glg

git log --stat

  • 使用快捷命令还是非常方便的!

z

自带插件,可以快速跳转到上个cd的目录下。

  • 直接修改配置文件.zshrc,在plugins中添加插件z,最终配置效果如下;
plugins=(
        git
        zsh-syntax-highlighting
        zsh-autosuggestions
        zsh-history-substring-search
        docker
        z
)
复制代码
  • 我们先切换到.oh-my-zsh/custom/plugins目录下,然后再切换到其他目录下,之后直接使用z plug命令就可以切换回去了。

btop

我们的命令行终端已经这么炫酷了,再使用top命令来看服务器的运行状态就有点掉档次了,下面来介绍个更好用的工具btop。

简介

btop是一款服务器资源监控工具,可以用来查看服务器的CPU、内存、磁盘、网络和进程状态。

安装

  • 首先我们需要下载btop的安装包,下载地址:github.com/aristocrato…
  • 下载完成后,解压到指定目录,并使用install.sh安装即可;
# 创建安装目录
mkdir btop
# 解压到安装目录
tar -xvf btop-1.1.2-x86_64-linux-musl.tbz -C btop
cd btop
# 安装
./install.sh
复制代码

使用

  • btop使用起来非常简单,直接使用btop命令即可运行;
btop --utf-force
复制代码
  • 运行成功后,界面还是非常炫酷的,服务器资源信息一目了然,再也不想用top命令了;
  • btop还支持鼠标交互,把单纯的命令行玩成了图形化界面的感觉,选择一个进程可以查看详细信息;
  • 按ESC键可以退出、修改设置或查看帮助;
  • 如果你想卸载的话,可以在安装目录使用如下命令。
make uninstall
复制代码

总结

OhMyZsh确实是款非常不错的工具,它极大地提高了我们的工作效率,让我们看起来更像资深程序员。btop也让我们的命令行终端更炫酷,用过之后再也不想用top命令使用了。如果你想让你的命令行终端更炫酷,不妨试试它们!


作者:MacroZheng
链接:https://juejin.cn/post/7041737352586199047
来源:稀土掘金
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。