mac OS/Linux/Unix下bash切换oh-my-zsh

是不是总觉得系统自带终端太丑或者看起来像txt,易读性差?是时候带你进入zsh天堂了。

先来看一下我的shell的前后对比图:

是不是清晰明朗了很多?如果觉得太花哨,自己配置去掉背景图也是可以的。

什么是shell?

Shell是Linux/Unix的一个外壳。它负责外界与Linux内核的交互,接收用户或其他应用程序的命令,然后把这些命令转化成内核能理解的语言,传给内核,内核是真正干活的,干完之后再把结果返回用户或应用程序。
其实就是:终端/命令行
mac OS系统是基于Unix内核的,故很多linux/unix适用的东西基本可以直接搬来mac上用

zsh又是什么?

Zsh是一个Linux用户很少使用的shell,这是由于大多数Linux产品安装,以及默认使用bash shell。几乎每一款Linux产品都包含有zsh,通常可以用apt-get、urpmi或yum等包管理器进行安装。

zsh到底是什么?

  • bash用户上手无压力
  • 超级多主题/配色/可自定义
  • 强大的命令补全:
    • 路径补全、命令补全,命令参数补全,插件内容补全等等
    • 触发补全只需要按tab 键
    • 比如你想杀掉 java 的进程,只需要输入 kill java + tab键,如果只有一个 java 进程,zsh 会自动替换为进程的 pid,如果有多个则会出现选择项供你选择
  • 强大的目录跳转:后面在介绍插件的时候详细介绍
  • alias上手之后效率高hin多
  • ……

说白了给我的理解就是诶给你的shell换了身装备,但这和简单的更换主题改变背景色不同,zsh比bash具有更强大的功能,相当于给bash升级了装备。

先来看看bash如何切换到zsh吧。

安装

Linux/mac其实提供了多种shell,默认bash,可以用命令来看自己电脑上有哪些:

1
cat /etc/shells

如果你用 Mac,直接看下一节
如果你用 Redhat Linux,执行:sudo yum install zsh
如果你用 Ubuntu Linux,执行:sudo apt-get install zsh
如果你用 Windows……要不去百度搜搜?

bash切换到zsh

1
2
# 先切换到 /bin/zsh
chsh -s /bin/zsh

安装oh-my-zsh

目前常用的 Linux 系统和 OS X 系统的默认 Shell 都是 bash,但是真正强大的 Shell 是深藏不露的 zsh, 这货绝对是马车中的跑车,跑车中的飞行车,史称『终极 Shell』。但是由于配置过于复杂,所以初期无人问津,很多人跑过来看看 zsh 的配置指南,什么都不说转身就走了。直到有一天,国外有个穷极无聊的程序员开发出了一个能够让你快速上手的zsh项目,叫做「oh my zsh」,Github 网址是:https://github.com/robbyrussell/oh-my-zsh 这玩意就像「X天叫你学会 C++」系列,可以让你神功速成,而且是真的.

可以在下面两种方法里任选一种:

自动安装

在终端中输入

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

手动安装

同样,在终端中的输入:

1
2
git clone git://github.com/robbyrussell/oh-my-zsh.git ~/.oh-my-zsh
cp ~/.oh-my-zsh/templates/zshrc.zsh-template ~/.zshrc

安装好了之后重启终端,你就会看到一个配色和显示都和以前不同的终端:

这时候你可能对它的配色还不太满意甚至觉得还不如原始的终端,别着急👇🏽


更多精彩内容:
终端shell美化:oh-my-zsh配置
oh-my-zsh 插件介绍