前言:所謂zsh不過是區別於linux系統裏默認shell(bash)的另一類shell罷了,無意中有看到有關zsh的介紹,本着對新鮮事物強烈的追求欲,今天我就來擼一擼有關zsh的配置
1.安裝使用
1)安裝環境
ubuntu18.04
2)安裝命令
1>zsh安裝
sudo apt-get install zsh
2>oh-my-zsh安裝(協助完成zsh的配置)
-
自動安裝:
wget https://github.com/robbyrussell/oh-my-zsh/raw/master/tools/install.sh -O - | sh
-
手動安裝:
#1.下載路徑
//github路徑
git clone git://github.com/robbyrussell/oh-my-zsh.git ~/.oh-my-zsh
//碼雲路徑
git clone https://gitee.com/mirrors/oh-my-zsh.git
#2.添加配置
cp ~/.oh-my-zsh/templates/zshrc.zsh-template ~/.zshrc
3)切換shell
chsh -s /bin/zsh
source .zshrc
關閉終端,重新打開即可。
2.特性概述
-
兼容bash
-
歷史命令記錄功能,比如輸入ls然後用上下箭頭可以翻閱所有使用過的相關命令
-
各種補全:路徑補全、命令補全,命令參數補全,插件內容補全等等,觸發補全只需要按一下或兩下 tab 鍵
-
智能跳轉,安裝了autojump之後,zsh 會自動記錄你訪問過的目錄,通過 j + 目錄名 可以直接進行目錄跳轉
-
目錄瀏覽和跳轉:輸入 d,即可列出你在這個會話裏訪問的目錄列表,輸入列表前的序號,即可直接跳轉
-
在當前目錄下輸入 .. 或 … ,或直接輸入當前目錄名都可以跳轉,你甚至不再需要輸入 cd 命令了
-
通配符搜索:ls -l */.sh,可以遞歸顯示當前目錄下的 shell 文件,文件少時可以代替 find
-
更強的別名
-
插件支持
-
......
3.一般配置
zsh的配置主要集中在用戶當前目錄的.zshrc裏面,類似於bash的.bashrc。通過修改這個文件,我們可以根據個人使用習慣定製我們需要的功能,如:
1)主題設置
本地主題資源目錄路徑:~/.oh-my-zsh/themes,通過修改ZSH_THEME的值然後保存重新打開終端即可生效。
ZSH_THEME=”robbyrussell”
2)命令別名
alias vi='vim'
alias ll='ls -l'
alias la='ls -a'
alias cls='clear'
alias grep="grep --color=auto"
3)多態操作
因爲zsh可以設置針對不同後綴名的文件只需輸入文件名就可以作用於預設的命令操作,所以這裏姑且稱之爲文件的多態操作吧。
#執行vi操作
alias -s c=vi
alias -s h=vi
alias -s py=vi
alias -s cpp=vi
alias -s java=vi
alias -s txt=vi
#執行解壓操作
alias -s gz='tar -xzvf'
alias -s zip='unzip'
#使用evince打開pdf文件
alias -s pdf='evince'
#使用typora打開md文件
alias -s md="typora"
4)插件使用
插件資源目錄路徑:~/.oh-my-zsh/plugins
配置方式:在git後面追加需要使用的已有插件即可
plugins=(git)
1>autojump安裝
-
下載:
wget https://github.com/downloads/joelthelion/autojump/autojump_v21.1.2.tar.gz
-
解壓:tar -xzf autojump_v21.1.2.ta.gz
-
安裝:./install.sh
-
配置:添加如下一行至~/.zshrc中
[[ -s ~/.autojump/etc/profile.d/autojump.sh ]] && . ~/.autojump/etc/profile.d/autojump.sh
2>incr補全插件安裝
-
下載
cd ~/.oh-my-zsh/plugins
mkdir incr && cd incr
wget http://mimosa-pudica.net/src/incr-0.2.zsh
-
配置
#在~/.zshrc中添加如下代碼
source ~/.oh-my-zsh/plugins/incr/incr-0.2.zsh