美文网首页
Oh My Zsh —— 强大而美观的终端,你值得拥有

Oh My Zsh —— 强大而美观的终端,你值得拥有

作者: 老Q在折腾 | 来源:发表于2018-10-11 16:44 被阅读0次

    小时候看黑客帝国,电影中那一串串各种颜色的数字迅速滚动过屏幕,哇,好酷。

    然而后来接触到真实的终端时,才发现这个黑底白字的东西这么枯燥乏味,探索计算机世界的兴趣之火简直就要被浇灭了,说好的狂拽酷炫呢?

    事实上,大多数的终端都是高度支持自定义的,只要你爱折腾,你可以让它随心所欲地变化,要实现电影中的效果也并非不可。

    然而电影效果终究是电影效果,我们在实际的工作和学习中需要的是一个高效、美观的终端,而不是一个单纯用来“装 Bi”(这个Bi是和谐音,只是恰巧跟你脑子里想的那个读音重合了)的外壳。

    我们知道,现在最流行的shellbash,绝大多数的Linux预装且保持默认的正是它。其他流行的shell还包括shcshkshtcshdash等,而今天我们的主角,则是zsh以及基于zsh的定制版oh-my-zsh


    欢迎大家关注我的个人博客【数洞】 【备用站】

    一、安装

    zsh是一个支持高度个性化的shell,但是从零开始进行配置需要花费大量的时间,因此让很多程序员望而却步。同时有些人可能担心有些bash命令在zsh下得不到支持,这一点大家可以放心,根据我平时的经验,绝大多数bash下的操作在zsh下都可以被很好地支持,兼容度极高。

    1. 安装zsh

    目前来看,并不是所有的Linux发行版会预装zsh,因此我们可以先检查下我们的系统里是否包含它:

    # dain @ localhost in ~ [14:00:29]
    $ whereis zsh
    /bin/zsh
    
    # dain @ localhost in ~ [14:00:34]
    $ which zsh
    /bin/zsh
    

    whereiswhich命令都能满足我们的要求,可以看到,我的Mac里已经存在了zsh,如果没有的话,我们就需要安装下zsh

    在Mac下:

    # dain @ localhost in ~ [14:00:36]
    $ brew install zsh
    

    在CentOS下:

    # dain @ localhost in ~ [14:00:50]
    $ sudo yum install zsh
    

    在Ubuntu和Debian下:

    # dain @ localhost in ~ [14:01:00]
    $ sudo apt install zsh
    

    在Arch和Majaro下:

    # dain @ localhost in ~ [14:01:15]
    $ sudo pacman -S zsh
    

    不出意外,我们的zsh应该就安装好了。我们可以查看下版本:

    # dain @ localhost in ~ [14:06:08]
    $ zsh --version
    zsh 5.3 (x86_64-apple-darwin17.0)
    

    在Mac下,需要我们先保证HomeBrew已经安装,大家可以自行搜索安装。

    2. 安装git

    安装Oh My Zsh之前,我们还要保证git已经安装:

    # dain @ localhost in ~ [14:08:38]
    $ whereis git
    /usr/bin/git
    
    # dain @ localhost in ~ [14:08:33] C:129
    $ git --version
    git version 2.17.1 (Apple Git-112)
    

    如果尚未安装git则需要进行安装:

    在Mac下:

    # dain @ localhost in ~ [14:00:36]
    $ brew install git
    

    在CentOS下:

    # dain @ localhost in ~ [14:00:50]
    $ sudo yum install git
    

    在Ubuntu和Debian下:

    # dain @ localhost in ~ [14:01:00]
    $ sudo apt install git
    

    在Arch和Majaro下:

    # dain @ localhost in ~ [14:01:15]
    $ sudo pacman -S git
    

    3. 安装Oh My Zsh

    Oh My Zsh相当于是一个提供了预设个性化配置的zsh,我们可以使用curl或者wget下载安装脚本并执行:

    # dain @ localhost in ~ [14:09:07]
    $ sh -c "$(curl -fsSL https://raw.githubusercontent.com/robbyrussell/oh-my-zsh/master/tools/install.sh)"
    
    # dain @ localhost in ~ [14:15:14] 
    $ sh -c "$(wget https://raw.githubusercontent.com/robbyrussell/oh-my-zsh/master/tools/install.sh -O -)"
    

    不是所有的系统或发行版都预装了wget,所以使用curl是一个比较保险的方式。

    二、配置

    1. 默认shell修改

    我们要将zsh修改为我们的默认shell

    # dain @ localhost in ~ [14:30:22]
    $ chsh -s /bin/zsh
    Changing shell for dain.
    Password for dain:
    chsh: no changes made
    

    因为我的默认shell已经是zsh,所以这里的输出可能跟你的不太一样。

    2. 主题配置

    可能会有很多人建议下载PowerlinePowerFonts,使用agnoster主题,我最初也是这一套配置方案,然而后来我发现了一个更好的方案,只需要几秒钟即可搞定。

    那就是ys主题。使用这一主题不需要任何额外的配置,只需要打开我们的~/.zshrc文件,将主题修改为ys即可:

    # 找到如下这一行,将引号中的部分修改为`ys`即可
    ZSH_THEME="ys"
    

    最终实现的效果如下图,包含了用户、Host、工作目录、时间选项,并且另起一行用于用户输入,在输出结果的末尾也会加一行空行,同时还搭配了美观的配色。这一方案可以轻易地将多次的输入输出分开,不会让用户产生混淆,使用这一方案,在翻阅历史输入输出时会特别高效,当然,上述的Powerline方案也可以实现这一目标,只是其配置相对于这一方案复杂了许多。

    # dain @ localhost in ~ [14:30:17] C:130
    $ echo "Hello World"
    
    Hello World
    
    # dain @ localhost in ~ [14:30:22]
    $
    

    当然,主题这种东西也不光是看是否高效,还得考虑个人习惯以及个人审美风格,因此大家完全可以考虑不同的主题和配置方案,网上有丰富的教程指导,这一过程不会太过不愉快。

    好了,到此为止,我们的终端就配置好了,快去享用它吧!

    相关文章

      网友评论

          本文标题:Oh My Zsh —— 强大而美观的终端,你值得拥有

          本文链接:https://www.haomeiwen.com/subject/ksnbaftx.html