美文网首页
mac 平台 oh-my-zsh

mac 平台 oh-my-zsh

作者: 一点墨汁 | 来源:发表于2019-03-01 15:18 被阅读1次

    转自: https://www.chadou.me/p/203

    zsh 介绍

    Linux Shell

    Linux/Unix提供了很多种Shell,常用的Shell有这么几种,sh、bash、csh等,想知道你的系统有几种shell,可以通过以下命令查看:

    [root@iZ216d96ogsz ~]# cat /etc/shells
    /bin/sh
    /bin/bash
    /sbin/nologin
    /usr/bin/sh
    /usr/bin/bash
    /usr/sbin/nologin
    /bin/tcsh
    /bin/csh
    
    

    zsh 简介

    Zsh是一个Linux下强大的shell, 也许是目前最好用的 shell,是 bash 替代品中较为优秀的一个。由于大多数Linux产品安装,以及默认使用bash shell, 但是丝毫不影响极客们对zsh的热衷, 几乎每一款Linux产品都包含有zsh,通常可以用apt-get、urpmi或yum等包管理器进行安装

    Zsh具有以下主要功能

    开箱即用、可编程的命令行补全功能可以帮助用户输入各种参数以及选项

    在用户启动的所有shell中共享命令历史

    通过扩展的文件通配符,可以不利用外部命令达到find命令一般展开文件名

    改进的变量与数组处理

    在缓冲区中编辑多行命令

    多种兼容模式,例如使用/bin/sh运行时可以伪装成Bourne shell

    可以定制呈现形式的提示符;包括在屏幕右端显示信息,并在键入长命令时自动隐藏

    可加载的模块,提供其他各种支持:完整的TCP与Unix域套接字控制,FTP客户端与扩充过的数学函数

    完全可定制化

    zsh 与 oh-my-zsh

    oh-my-zsh 是基于zsh的功能做了一个扩展,方便的插件管理、主题自定义,以及漂亮的自动完成效果。

    安装 zsh

    安装 zsh

    对于一般的CentOS系统,直接键入以下命令安装:

    yum install zsh
    
    

    配置zsh

    zsh配置比较复杂,使用默认配置,或者把你的bash的配置文件(/.bash_prorile或者/.profile等)拷贝到zsh的配置文件~/.zshrc里,因为zsh兼容bash。

    取代bash,设为默认shell

    sudo usermod -s /bin/zsh username
    # 或者
    chsh -s /bin/zsh
    # 或者
    chsh -s `which zsh`
    
    

    如果要切换回bash:

    chsh -s /bin/bash
    
    

    如果你不想把zsh设为默认的shell, 只是临时使用它, 你可以每次都输入zsh进入, 输入exit退出。

    安装 oh-my-zsh

    zsh功能很强大但是太复杂,所以需要oh-my-zsh来简化它。
    Oh My Zsh是通过在终端中运行以下命令之一来安装的。您可以通过curl或wget的命令行安装。

    通过 curl

    sh -c "$(curl -fsSL https://raw.githubusercontent.com/robbyrussell/oh-my-zsh/master/tools/install.sh)"
    
    

    通过 wget

    sh -c "$(wget https://raw.githubusercontent.com/robbyrussell/oh-my-zsh/master/tools/install.sh -O -)"
    
    
    配置插件

    你想要使用Oh My Zsh,你需要在.zshrc文件中启用它们。你会在$ HOME目录中找到.zshrc文件。使用您最喜欢的文本编辑器打开它,您会看到一个地方plugin=(git)列出您要加载的所有插件。

    plugins=(git bundler osx rake ruby)
    
    
    更新oh-my-zsh

    默认情况下, 您将被提示检查每几周的升级. 如果你想我ZSH自动升级本身没有提示你, 修改~/.zshrc

    disable_update_prompt = true
    
    

    禁用自动升级, 修改~/.zshrc

    disable_auto_update = true
    
    

    当然你也可以选择手动更新

    如果你想在任何时间点升级(也许有人刚刚发布了一个新的插件,你不想等待一个星期?)你只需要运行:

    upgrade_oh_my_zsh
    
    
    卸载oh-my-zsh

    如果你想卸载oh-my-zsh, 从命令行运行下面的命令. 这将删除本身和恢复你以前的bash或者zsh配置.

    uninstall_oh_my_zsh zsh
    
    

    安装 zsh-autosuggestion

    zsh-autosuggestion 是一款根据命令历史输入时的命令进行输入提示的插件。

    手动安装

    1、克隆资源库到你的计算机. 假设是 ~/.zsh/zsh-autosuggestions

    git clone git://github.com/zsh-users/zsh-autosuggestions ~/.zsh/zsh-autosuggestions
    
    

    2、添加内容到 .zshrc:

    source ~/.zsh/zsh-autosuggestions/zsh-autosuggestions.zsh
    
    

    3、重新打开终端会话。

    通过 oh-my-zsh 安装

    1、克隆资源库到 $ZSH_CUSTOM/plugins (默认是 ~/.oh-my-zsh/custom/plugins)

    git clone git://github.com/zsh-users/zsh-autosuggestions $ZSH_CUSTOM/plugins/zsh-autosuggestions
    
    

    2、将插件添加到插件列表,让 Oh My Zsh 加载。
    修改 ~/.zshrc 文件,找到 plugins=(git) 这一行,然后添加autosuggestions

    plugins=(git zsh-autosuggestions)
    
    

    3、重新打开终端会话,或者执行 source ~/.zshrc也可以更新会话。

    其他:

    1、你如果分开设置oh-my-zsh和autosuggestions,那么你的terminal的autosuggestions不会起作用的。你需要要把autosuggestions作为zsh的插件放到 ~/.zsh/plugins/ 下面,然后再在 ~/.zshrc 文件中加入这个插件 plugins=(git zsh-autosuggestions)

    参考资料

    Zsh的一些命令行效率工具

    Mac 每次都要执行source ~/.bash_profile 配置的环境变量才生效,如何处理?
    自己在 ~/.bash_profile 中配置环境变量, 可是每次重启终端后配置的不生效.需要重新执行 : $source ~/.bash_profile

    发现zsh加载的是 ~/.zshrc文件,而 ‘.zshrc’ 文件中并没有定义任务环境变量。

    解决办法

    在~/.zshrc文件最后,增加一行:
    source ~/.bash_profile

    参考:https://blog.csdn.net/science_Lee/article/details/79214127

    相关文章

      网友评论

          本文标题:mac 平台 oh-my-zsh

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