作為一名程序猿底燎,經(jīng)常需要安裝開發(fā)環(huán)境禾唁,難免要跟終端打交道,為了使用方便和提高效率迟蜜,打造一個好用的終端很重要刹孔,下面記錄了如何配置Shell
和oh-my-zsh
。
Shell配置
查看Shell列表
? ~ cat /etc/shells
# List of acceptable shells for chpass(1).
# Ftpd will not allow users to connect who are not using
# one of these shells.
/bin/bash
/bin/csh
/bin/ksh
/bin/sh
/bin/tcsh
/bin/zsh
mac系統(tǒng)終端默認(rèn)使用的Shell是bash娜睛,我使用的是zsh髓霞。
# 如下命令可以查看當(dāng)前使用的shell
? ~ echo $SHELL
/bin/zsh
# 查看zsh版本
? ~ zsh --version
zsh 5.3 (x86_64-apple-darwin18.0)
所周知,在Unix/Linux的世界里畦戒,人機(jī)交互的工具就是shell了方库,常見的有bash, ksh, csh等。 由于各個發(fā)行版的系統(tǒng)默認(rèn)shell都是bash障斋,所以大家對bash的熟悉度是最高的纵潦。最今天給大家介紹一款效率遠(yuǎn)遠(yuǎn)超過bash的shell —— zsh。其實(shí)zsh在1990年的時候就出現(xiàn)了垃环,只比bash晚一年邀层,而且zsh在bash的基礎(chǔ)上做了很多功能上、性能上的改進(jìn)遂庄。
zsh有很多bash所沒有的功能寥院,但是zsh的初期配置太過繁瑣,流行率一直不高涛目,直到有個叫Robby Russell的家伙在github上開發(fā)了oh-my-zsh項目秸谢,使大家使用zsh的便捷性大大提高,目前該項目已經(jīng)有72955 stars霹肝。
想了解zsh
的優(yōu)勢可以看一下這篇文章《DevOps的利器 - zsh钮追,了解一下?》
寫這邊文章的時候oh-my-zsh
項目已經(jīng)83499 star了阿迈,下文我也記錄了如何安裝oh-my-zsh元媚。
切換到zsh
mac系統(tǒng)是自帶zsh的,如果之前手誤刪掉了也不要緊苗沧,使用brew
安裝一下即可刊棕。
啥?brew
也沒裝... 給你個傳送門
brew install zsh zsh-completions
# 執(zhí)行如下命令后輸入您的密碼待逞,記得重啟終端
? ~ chsh -s /bin/zsh
oh my zsh
Oh My Zsh 是一個令人愉快的甥角、開源的、社區(qū)驅(qū)動的框架识樱,用于管理您的Zsh配置嗤无。它附帶了數(shù)千個有用的函數(shù)震束、幫助程序、插件当犯、主題和一些讓你驚奇的東西……
安裝
打開oh-my-zsh官網(wǎng)
-
找到
Install oh-my-zsh now
垢村,使用Via curl
或者Via wget
方式安裝都可以# Via curl sh -c "$(curl -fsSL https://raw.github.com/robbyrussell/oh-my-zsh/master/tools/install.sh)" # Via wget sh -c "$(wget https://raw.github.com/robbyrussell/oh-my-zsh/master/tools/install.sh -O -)"
主題
打開主題列表Themes
-
打開配置文件
~/.zshrc
,設(shè)置ZSH_THEME
# 若ZSH_THEME=""則表示不使用主題 # for example ZSH_THEME="robbyrussell"
插件
Oh My Zsh附帶了很多插件嚎卫,可以到Github上的wiki里查看
通過修改~/.zshrc
文件的plugins配置來啟用插件嘉栓,如下是我的配置:
# If you come from bash you might have to change your $PATH.
# export PATH=$HOME/bin:/usr/local/bin:$PATH
# Path to your oh-my-zsh installation.
export ZSH="/Users/zhouyang/.oh-my-zsh"
# See https://github.com/robbyrussell/oh-my-zsh/wiki/Themes
ZSH_THEME="robbyrussell"
# Plugins
plugins=(
git
autojump
zsh-autosuggestions
zsh-syntax-highlighting
)
source $ZSH/oh-my-zsh.sh
# 加上這句話可以保留之前bash的配置,或者把之前bash的配置都copy到這個文件來
source ~/.bash_profile
特別提示:插件裝多了會卡M刂睢侵佃!夠用即可。
下面是我比較喜歡的幾個插件:
快捷跳轉(zhuǎn)autojump
使用j
命令直接快速進(jìn)入某個目錄, 比如 j Downloads
-> cd ~/Downloads
Autojump是一種更快捷的文件系統(tǒng)導(dǎo)航方式奠支。它的工作原理是從命令行維護(hù)您最常使用的目錄的數(shù)據(jù)庫馋辈。
特別提醒:插件安裝完畢后必須使用cd訪問過目標(biāo)目錄一次后,才能使用本插件快速訪問該目錄倍谜。
用法如下:
? Downloads ls
autojump
# 由于Downloads/autojump目錄沒有使用cd訪問過首有,下面使用autojump跳轉(zhuǎn)失敗了
? Downloads j autojump
.
? Downloads cd autojump
? ~ j autojump
/Users/zhouyang/Downloads/autojump
# 上面使用cd訪問一次Downloads/autojump后,直接使用autojump即可跳轉(zhuǎn)
? autojump
安裝方式:
- 使用brew安裝autojump
brew install autojump
-
添加autojump到
~/.zshrc
文件中plugins列表中# Plugins plugins=( git autojump zsh-syntax-highlighting )
-
讀取配置及時生效
source ~/.zshrc
語法高亮
zsh-syntax-highlighting為zsh的shell提供語法高亮的一款插件枢劝,在終端上運(yùn)行命令之前就可以知道語法是否錯誤。
安裝方式:
- 在終端執(zhí)行:
brew install zsh-syntax-highlighting
- 添加
zsh-syntax-highlighting
到~/.zshtc
文件的plugins列表卜壕。 - 執(zhí)行:
source ~/.zshrc
自動建議
zsh-autosuggestions是一款自動建議命令的一款插件您旁,當(dāng)你鍵入命令時,會看到光標(biāo)后自動提供的建議轴捎,如果按下右方向鍵鹤盒,則接受此建議。
安裝方式:
-
Clone倉庫到
~/.oh-my-zsh/custom/plugins
目錄? ~ cd ~/.oh-my-zsh/custom/plugins ? plugins git:(master) git clone https://github.com/zsh-users/zsh-autosuggestions ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-autosuggestions
添加
zsh-autosuggestions
到~/.zshtc
文件的plugins列表侦副。重啟終端