直接换zsh+oh-my-zsh可行,但必须按顺序执行:先确认/安装zsh并用chsh设为默认shell,新开终端验证$SHELL;再用Gitee镜像安装oh-my-zsh,手动source ~/.zshrc;启用agnoster等主题需Powerline字体和UTF-8 locale;插件加载顺序须zsh-syntax-highlighting在zsh-autosuggestions之前。

直接换 zsh + oh-my-zsh 是可行的,但关键在顺序和验证——装完不等于生效,很多人卡在 chsh 后没新开终端,或主题乱码却没查字体和 locale。
确认并安装 Zsh
先检查是否已存在:
- 运行
zsh --version,有输出说明已装;无反应再安装 - Ubuntu/Debian:
sudo apt update && sudo apt install zsh - CentOS/RHEL 8+ 或 Fedora:
sudo dnf install zsh - CentOS 7:
sudo yum install zsh
设为默认 shell 并验证
chsh -s $(which zsh) 是必须步骤,但不会立即生效:
- 关掉当前终端,新开一个窗口
- 执行
echo $SHELL,输出应为/bin/zsh或/usr/bin/zsh - 若仍是
/bin/bash,说明未生效,别继续下一步 - 遇到
PAM authentication failure,可试:sudo chsh -s $(which zsh) $USER(部分系统支持)
安装 Oh My Zsh(推荐国内镜像)
官方脚本常超时或失败,用 Gitee 镜像更稳:
- 运行:
sh -c "$(curl -fsSL https://gitee.com/mirrors/oh-my-zsh/raw/master/tools/install.sh)" - 安装中提示“是否设为默认 shell”时,选 n(你已手动设过)
- 装完检查:
ls -la ~/.oh-my-zsh/和~/.zshrc是否存在 - 手动重载:
source ~/.zshrc,再执行echo $ZSH应输出~/.oh-my-zsh
配置主题与字体(避免乱码)
agnoster、powerlevel10k 等主题依赖两项基础支持:
-
Powerline 字体:Ubuntu/Debian 运行
sudo apt install fonts-powerline;CentOS/RHEL 可装powerline-fonts -
UTF-8 locale:运行
locale | grep UTF-8,确保有类似LANG=en_US.UTF-8;没有就执行:sudo locale-gen en_US.UTF-8 && sudo update-locale - 终端软件(如 GNOME Terminal、Alacritty、Windows Terminal)里需手动指定字体,例如
MesloLGS NF或DejaVu Sans Mono for Powerline
启用常用插件(顺序很重要)
zsh-syntax-highlighting 和 zsh-autosuggestions 必须按顺序加载,否则会冲突:
- 先克隆高亮插件:
git clone https://github.com/zsh-users/zsh-syntax-highlighting.git ${ZSH_CUSTOM:-$ZSH/custom}/plugins/zsh-syntax-highlighting - 再克隆建议插件:
git clone https://github.com/zsh-users/zsh-autosuggestions ${ZSH_CUSTOM:-$ZSH/custom}/plugins/zsh-autosuggestions - 编辑
~/.zshrc,确保插件列表中zsh-syntax-highlighting在zsh-autosuggestions之前 - 保存后运行
source ~/.zshrc


















