zsh配置
[TOC]
基本说明
工欲善其事,必先利其器
日常项目中经常使用shell处理命令行,那么一个好用的终端工具就是必备的器。
zsh作为一个macos默认的命令行,在很多平台都可以直接安装或者系统内置。 zsh相比bash就是可以做大量的定制,能够优化一些操作。 Mac OSX配合 zsh能大大减少敲键盘的次数和效率。
安装
国内安装
github国内访问经常卡顿,速度太慢。采用国内gitee提供的仓库,每日更新(gitee mirror 做的还不错) 自己的一键安装,(自动安装git kubectl docker zsh-autosuggestions zsh-syntax-highlighting)几个常用插件
# yum or apt
yum install -y zsh
# apt install zsh
git clone --depth=1 https://gitee.com/mirrors/oh-my-zsh.git ~/.oh-my-zsh
cp ~/.oh-my-zsh/templates/zshrc.zsh-template ~/.zshrc
chsh -s /bin/zsh
git clone --depth=1 https://github.com/zsh-users/zsh-autosuggestions.git ~/.oh-my-zsh/plugins/zsh-autosuggestions
git clone --depth=1 https://github.com/zsh-users/zsh-syntax-highlighting.git ~/.oh-my-zsh/plugins/zsh-syntax-highlighting
sed -i "s/plugins=(git)/plugins=(git kubectl docker zsh-autosuggestions zsh-syntax-highlighting)/g" ~/.zshrc
source ~/.zshrc
官方正常安装
$ sh -c "$(curl -fsSL https://raw.github.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"
# 有时候github 被墙了。可以试下下面
sh -c "$(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"
sh -c "$(wget -O- https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"
Mac自带ZSH,切换开启
chsh -s /bin/zsh
主要配置
安装好以后,在当前路径创建了个隐藏文件:
ls ~/.oh-my-zsh
lib 提供了核心功能的脚本库 tools 提供安装、升级等功能的快捷工具 plugins 自带插件的存在放位置 templates 自带模板的存在放位置 themes 自带主题文件的存在放位置 custom 个性化配置目录,自安装的插件和主题可放这里
关于 oh-my-zsh 插件的管理是很简单的,有两个插件目录:
- /Users/user/.oh-my-zsh/plugins
官方插件目录,该目录已经预装了很多实用的插件,只不过没激活而已;
- /Users/user/.oh-my-zsh/custom/plugins:
oh-my-zsh 第三方插件目录
开启或者添加插件方法
编辑.zshrc
文件
找到plugins=(git)这一行,如果没有添加。更改为如下
# vi .zshrc 找到plugins
plugins=(
git
extract
kubectl
zsh-syntax-highlighting
zsh-autosuggestions
z
)
主要推荐插件
一般oh-my-zsh的默认插件加上这两个插件就已经能满足90%人的需求了。
zsh-autosuggestions自动提示插件
git clone --depth=1 git://github.com/zsh-users/zsh-autosuggestions ~/.oh-my-zsh/plugins/zsh-autosuggestions
git depth=1 只获取第一层文件,不获取历史,减少文件大小
zsh-syntax-highlighting 命令有语法高亮效果
git clone https://github.com/zsh-users/zsh-syntax-highlighting.git ~/.oh-my-zsh/plugins/zsh-syntax-highlighting
zsh修改主题
打开~/.zshrc文件, 我一般设置成random,这样就可以经常更换下主题,看到好的再固化。
vi .zshrc
ZSH_THEME=random