ubuntu使用oh my zsh美化終端
文章目錄
- ubuntu使用oh my zsh美化終端
- 1. 安裝zsh和oh my zsh
- 2. 修改zsh主題
- 3. 安裝zsh插件
- 4. 將`.bashrc`移植到`.zshrc`
- Reference
1. 安裝zsh和oh my zsh
首先安裝zsh
sudo apt install zsh
然后查看本地有哪些shell可以使用
cat /etc/shells
將默認的shell切換為zsh
chsh -s /bin/zsh
然后安裝oh-my-zsh,參考官網提供的兩種安裝方式
sh -c "$(wget https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh -O -)"
或者
sh -c "$(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"
2. 修改zsh主題
oh-my-zsh內置了很多主題,可以進入路徑~/.oh-my-zsh/themes
下進行查看,如圖所示

如果想要修改成自己喜歡的主題,可以
sudo gedit ~/.zshrc
然后找到ZSH_THEME="xxxx"
,將其修改為已經安裝的主題就行,保存然后退出,打開終端
source ~/.zshrc
這里推薦一個主題powerlevel10k,只需要將其git到~/.oh-my-zsh/custom/themes/powerlevel10k
目錄下即可,
git clone --depth=1 https://github.com/romkatv/powerlevel10k.git ${ZSH_CUSTOM:-$HOME/.oh-my-zsh/custom}/themes/powerlevel10k
然后再配置~/.zshrc
文件
sudo gedit ~/.zshrc
修改為ZSH_THEME="powerlevel10k/powerlevel10k"
,然后source
source ~/.zshrc
效果如下

3. 安裝zsh插件
zsh的內置插件可以在路徑~/.oh-my-zsh/plugins
中進行查看,如下圖所示

別的插件可以在:awesome-zsh-plugins進行查找
這里推薦兩個插件,第一個是支持自動補全的zsh-autosuggestions
zsh-autosuggestions
我們只需要將其git到路徑~/.oh-my-zsh/custom/plugins
中,然后配置~/.zshrc
文件即可
git clone https://github.com/zsh-users/zsh-autosuggestions ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-autosuggestions
然后在~/.zshrc
中把插件添加到插件列表中
plugins=(# other plugins...zsh-autosuggestions # 插件之間使用空格隔開
)
然后source一下
source ~/.zshrc
zsh-syntax-highlighting 是一個命令語法校驗插件,在輸入命令的過程中,若指令不合法,則指令顯示為紅色,若指令合法就會顯示為綠色。
按照相同的流程,我們即可配置這個插件,將其git到~/.oh-my-zsh/custom/plugins
中
git clone https://github.com/zsh-users/zsh-syntax-highlighting.git ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-syntax-highlighting
然后在~/.zshrc
中將zsh-syntax-highlighting插入插件列表
plugins=(# other plugins...zsh-autosuggestionszsh-syntax-highlighting
)
然后source一下
source ~/.zshrc
4. 將.bashrc
移植到.zshrc
筆者之前一直在使用bash
然后配置了一些資源路徑,比如ros
、anaconda
還有一些別的環境變量比如cuda
、cudnn
等,要進行移植其實很簡單,大部分的時候我們只需要將xxx.bash
替換為xxx.zsh
即可,然后別的一些環境變量的設置可以直接復制過去。舉個例子
這是我的.bashrc
自己添加的部分
# >>> clash <<<
export PATH=$PATH:/opt/clash# >>> cuda <<<
export PATH=$PATH:/usr/local/cuda/bin
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/cuda/lib64
export LIBRARY_PATH=$LIBRARY_PATH:/usr/local/cuda/lib64
# export CUDA_HOME=/usr/local/cuda-11.1# >>> conda initialize >>>
# !! Contents within this block are managed by 'conda init' !!
__conda_setup="$('/home/your_usr_name/miniconda3/bin/conda' 'shell.bash' 'hook' 2> /dev/null)"
if [ $? -eq 0 ]; theneval "$__conda_setup"
elseif [ -f "/home/your_usr_name/miniconda3/etc/profile.d/conda.sh" ]; then. "/home/your_usr_name/miniconda3/etc/profile.d/conda.sh"elseexport PATH="/home/your_usr_name/miniconda3/bin:$PATH"fi
fi
unset __conda_setup
# <<< conda initialize <<<# >>> ros noetic <<<
source /opt/ros/noetic/setup.bash
# >>> ros2 foxy <<<
# source /opt/ros/foxy/setup.bash# >>> ur5 workspace <<<
source /home/your_usr_name/Documents/catkin_ur5/devel/setup.bash
# >>> frcobot workspace <<<
source /home/your_usr_name/Documents/catkin_frco/devel/setup.bash# >>> pyorbbecsdk <<<
export PYTHONPATH=$PYTHONPATH:/home/your_usr_name/Documents/pyorbbecsdk/install/lib/
我將其放在.zshrc
中就修改如下
# >>> conda initialize >>>
# !! Contents within this block are managed by 'conda init' !!
__conda_setup="$('/home/your_usr_name/miniconda3/bin/conda' 'shell.zsh' 'hook' 2> /dev/null)"
if [ $? -eq 0 ]; theneval "$__conda_setup"
elseif [ -f "/home/your_usr_name/miniconda3/etc/profile.d/conda.sh" ]; then. "/home/sjhyour_usr_nameminiconda3/etc/profile.d/conda.sh"elseexport PATH="/home/your_usr_name/miniconda3/bin:$PATH"fi
fi
unset __conda_setup
# <<< conda initialize <<<# >>> clash <<<
export PATH=$PATH:/opt/clash# >>> cuda <<<
export PATH=$PATH:/usr/local/cuda/bin
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/cuda/lib64
export LIBRARY_PATH=$LIBRARY_PATH:/usr/local/cuda/lib64
# export CUDA_HOME=/usr/local/cuda-11.1# >>> ros noetic <<<
source /opt/ros/noetic/setup.zsh
# >>> ros2 foxy <<<
# source /opt/ros/foxy/setup.zsh# >>> ur5 workspace <<<
source /home/your_usr_name/Documents/catkin_ur5/devel/setup.zsh
# >>> frcobot workspace <<<
source /home/your_usr_name/Documents/catkin_frco/devel/setup.zsh# >>> pyorbbecsdk <<<
export PYTHONPATH=$PYTHONPATH:/home/your_usr_name/Documents/pyorbbecsdk/install/lib/
Reference
[1]zsh 安裝與配置:9步打造高效命令行