oh-my-zsh + zsh 强大的终端环境
人生苦短,我用zsh.
介绍
zsh 是一个强大的 bash 替代,而 oh-my-zsh 是 zsh 的一键式配置工具,尤其是配合一些插件,功能强大,好用又便捷。
准备工作
- 我们看一下系统内置了几种shell:
cat /etc/shells
#
# /etc/shells
#
/bin/sh
/bin/bash
- 我的电脑现在仅仅只有2种;
sh
和bash
。
- 当然如果你使用的是Mac,你会发现多了一个zsh,也就是说OSX系统预装了zsh。
- 目前大部分的Linux和OSX系统默认使用bash;其实真正强大的shell是深藏不漏的zsh,史称
终极Shell
,但是由于配置过于复杂,很多人看了几分钟的zsh使用指南,什么都没说直接关了网页走了。直到有一天,oh-my-zsh被一个程序员做了出来,速成突然变成了可能。
安装zsh
- Ubuntu用户可以在终端运行:
sudo apt-get install zsh zsh-completions
- 使用pacman包管理器的用户可以:
sudo pacman -S zsh zsh-completions
- zsh-completions 包是用以增强zsh的补全功能。
- mac系统下无需安装。
下载oh-my-zsh
- curl 安装:
sh -c "$(curl -fsSL https://raw.githubusercontent.com/robbyrussell/oh-my-zsh/master/tools/install.sh)"
- weget 安装:
sh -c "$(wget -O- https://raw.githubusercontent.com/robbyrussell/oh-my-zsh/master/tools/install.sh)"
- 选择以上方式的其中一种,执行后自动读取系统环境变量并自动进行zsh配置。
切换到zsh
chsh -s /usr/local/bin/zsh
配置
- zsh配置文件在用户当前目录下的
.zshrc
中,打开它:
vim ~/.zshrc
- 我们可以修改这个参数来自定义主题
ZSH_THEME="robbyrussell"
- robbyrussell 是主题名。>可挑选你喜欢的主题。
添加插件
在
.zshrc
文件中加入插件的名字,即可启动插件:
plugins=( [plugins...] )
- cp:显示复制进度。
- git:默认开启的插件,提供了大量 git 的alias。详情
- extract:功能强大的解压插件,所有类型的文件解压一个命令
x
全搞定,再也不需要去记tar后面到底是哪几个参数了。 - z:强大的目录自动跳转命令,会记忆你曾经进入过的目录,用模糊匹配快速进入你想要的目录。
一些实用的,非自带插件
zsh-syntax-highlighting
:高亮你的zsh命令,正确显示绿色,错误显示红色。
git clone https://github.com/zsh-users/zsh-syntax-highlighting.git ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-syntax-highlighting
zsh-autosuggestions
:自动匹配你历史的输入命令。
git clone git://github.com/zsh-users/zsh-autosuggestions $ZSH_CUSTOM/plugins/zsh-autosuggestions
同样在
.zshrc
文件中加入plugins=(... zsh-syntax-highlighting zsh-autosuggestions)
保存退出,并运行
source ./zshrc
,更新一下zsh,当然你也可以重新打开命令行,就可以享受zsh给你带来的便捷了。
设置命令别名,让输入更便捷
还是找到zsh的配置文件
.zshrc
,(~/.zshrc),添加命令别名:例如:
alias install="sudo apt-get install"
应用配置文件,使配置生效
source ~/.zshrc
- 查看当前shell现有别名,终端下输入:
➜ ~ alias
- Bash 里一些常用的别名:
alias la='ls -Fa' # 列出所有文件
alias ll='ls -Fls' # 列出文件详细信息
alias rm='rm -i' # 删除前需确认
alias cp='cp -i' # 覆盖前需确认
alias mv='mv -i' # 覆盖前需确认
alias vi='vim' # 输入 vi 命令时使用 vim 编辑器