樹莓派提高shell逼格oh-my-zsh

20170904 初成文,未完...

20171012 更新插件及alias方案

技術可以菜,但寫代碼的方式一定要帥!

powerline主題

查看當前系統可用的shell

cat /etc/shells

“Shell是Linux/Unix的一個外殼,你理解成衣服也行。它負責外界與Linux內核的交互,接收用戶或其他應用程序的命令,然后把這些命令轉化成內核能理解的語言,傳給內核,內核是真正干活的,干完之后再把結果返回用戶或應用程序。

Linux/Unix提供了很多種Shell,為毛要這么多Shell?難道用來炒著吃么?那我問你,你同類型的衣服怎么有那么多件?花色,質地還不一樣。寫程序比買衣服復雜多了,而且程序員往往負責把復雜的事情搞簡單,簡單的事情搞復雜。牛程序員看到不爽的Shell,就會自己重新寫一套,慢慢形成了一些標準,常用的Shell有這么幾種,sh、bash、csh等”? ? --摘自網上

zsh強大之處在于命令補全,可以補齊路徑,補齊命令,補齊參數等,只需按TAB鍵;另外還有跳轉目錄、通配符搜索、別名、歷史記錄等等...還有幾百種插件拓展

一、安裝前需要先安裝zsh

sudo apt install zsh

二、兩種下載方式,擇其一

1、通過wget下載安裝腳本

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

2、通過curl下載安裝腳本

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

三、更換主題及部分參數說明

sudo nano ~/.zshrc

export PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin

export TERM=xterm-256color? ? //使終端支持256色,tput colors或echo $TERM顯示是否正確開啟

ZSH_THEME="agnoster"? ? //改為random會在每次打開終端或執行zsh隨機選擇一種主題風格

plugins=(git autojump zsh-syntax-highlighting)? //使用的插件

DISABLE_AUTO_UPDATE="true"? //關閉自動更新

ENABLE_CORRECTION="true" //開啟智能更正選項

CASE_SENSITIVE="true" //對大小寫敏感

alias g='git'? //別名設置

四、使用agnoster主題時依賴powerline字體,安裝缺失字體

wget https://raw.githubusercontent.com/powerline/powerline/develop/font/10-powerline-symbols.conf

wget https://raw.githubusercontent.com/powerline/powerline/develop/font/PowerlineSymbols.otf

sudo mkdir /usr/share/fonts/OTF

sudo cp 10-powerline-symbols.conf /usr/share/fonts/OTF/

sudo mv 10-powerline-symbols.conf /etc/fonts/conf.d/

sudo mv PowerlineSymbols.otf /usr/share/fonts/OTF/

五、切換默認shell

chsh -s /bin/zsh

六、插件

ls ~/.oh-my-zsh/plugins? ? //列出內置可用插件

直接在~/.zshrc里添加即可,部分需要安裝,比如指令高亮插件:

git clone git://github.com/jimmijj/zsh-syntax-highlighting ~/.oh-my-zsh/custom/plugins/zsh-syntax-highlighting

plugins=(zsh-syntax-highlighting)? //終端命令提示,正確為綠色,錯誤為紅色

我自己使用的插件(僅供參考):

plugins=(git sudo colored-man-pages last-working-dir command-not-found zsh-syntax-highlighting zsh-autosuggestions autojump command-time alias-tips you-should-use debian dirhistory)?

sudo //忘了加sudo只需按兩下Esc鍵

colored-man-pages //man手冊頁面,高亮版,更容易閱讀

last-working-dir //返回上次打開終端的目錄

command-time //顯示某命令執行完成所用的時間

zsh-autosuggestions //根據使用習慣自動顯示建議,按→補充

alias-tips //提示可用的alias

zsh-you-should-use //與上面類似,提示可用的alias,可配置

dirhistory //使用alt+左右方向鍵來切換歷史上級或下級目錄

上面需自行安裝的插件:

git clone git://github.com/zsh-users/zsh-autosuggestions ~/.oh-my-zsh/custom/plugins/zsh-autosuggestions

git clone https://github.com/popstas/zsh-command-time.git ~/.oh-my-zsh/custom/plugins/command-time

git clone https://github.com/MichaelAquilina/zsh-you-should-use.git ~/.oh-my-zsh/custom/plugins/you-should-use

git clone https://github.com/djui/alias-tips.git ~/.oh-my-zsh/custom/plugins/alias-tips

七、別名方案(參考,可按個人使用習慣自行修改)

alias wget="wget -c"

alias du="du -h"

alias df="df -Th"

alias cp="cp -iv"

alias mv="mv -iv"

alias rm="rm -iv"

alias ls="ls -F --color=auto"

alias ll="ls -alF"

alias la="ls -aF"

#下面這個是按大小排序,僅顯示大小和文件名,不顯示其他信息

alias lll="ls -AlhF --sort=size . | tr -s " " | cut -d " " -f 5,9"

alias grep="grep --color=auto'

#輸出當前目錄size最大的10個文件夾

alias dumax="du -hsx * | sort -rh | head -10"

alias fm="free -m"

alias ua="uname -a"

alias acs="apt-cache search"

alias ats="sudo aptitude show"

alias ati="sudo aptitude install"

alias aud="sudo aptitude update && sudo aptitude upgrade"






參考文章:

你好,Oh My Zsh - 社區力量全新方式定義命令行

分享一下,你們都用了什么 oh my zsh 插件?

Linux終極shell-Z Shell--用強大的zsh & oh-my-zsh把Bash換掉

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容