安装 OhMyZsh + Spaceship 美化终端控制台
Oh My Zsh 是一款基于 Zsh 的命令行框架,它整合了大量实用插件、主题以及便捷功能,能极大提升终端的使用效率与美观度。无论是开发人员还是日常终端用户,都能通过它获得更流畅的命令行体验。从环境准备开始,逐步完成 Oh My Zsh 的安装、基础配置、插件使用及主题优化。
效果预览

安装 Zsh
Oh My Zsh 依赖 Zsh 环境,因此首先要确认系统中是否已安装 Zsh,若未安装则需先完成安装。
检查 Zsh 是否安装及版本
打开终端,输入以下命令:
zsh --version
安装 Zsh(Arch为例)
Arch 系统通过 pacman 包管理器安装 Zsh:
sudo pacman -S zsh
将 Zsh 设置为默认 Shell
安装完成后,输入以下命令将 Zsh 设为默认 Shell,重启终端生效:
chsh -s $(which zsh)
安装 Oh My Zsh
Oh My Zsh 提供了两种简单的安装方式,推荐使用 curl 或 wget 命令:
通过 curl 安装
sh -c "$(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"
通过 wget 安装
sh -c "$(wget https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh -O -)"
安装过程说明
执行安装命令后,终端会提示是否确认安装,输入 y 回车即可。安装完成后,终端会自动切换到 Oh My Zsh 环境,界面会显示 Oh My Zsh 的 Logo 及基础信息。
若安装过程中出现“网络连接失败”,可尝试更换网络或者代理,或手动下载安装脚本后执行。
安装 Spaceship 主题
Spaceship 是一款轻量、高颜值的 Oh My Zsh 主题,支持多语言版本、Git 状态、电池信息等丰富模块,安装步骤:
克隆仓库
执行以下命令克隆 Spaceship 仓库到 Oh My Zsh 自定义主题目录:
# Clone this repo
git clone https://github.com/spaceship-prompt/spaceship-prompt.git "$ZSH_CUSTOM/themes/spaceship-prompt" --depth=1
创建符号链接
将主题文件链接到 Oh My Zsh 自定义主题目录(便于识别调用):
# Symlink to your oh-my-zsh custom themes directory
ln -s "$ZSH_CUSTOM/themes/spaceship-prompt/spaceship.zsh-theme" "$ZSH_CUSTOM/themes/spaceship.zsh-theme"
对于 Arch 系列系统,除了上述手动克隆安装方式外,还可通过 Yay(常用 AUR 助手)快速安装 Spaceship 主题,无需手动克隆与创建链接,命令如下:
yay -S spaceship-prompt
安装 Yay 后,可直接通过 yay -S spaceship-prompt 快速安装 Spaceship 主题,后续还能通过 yay -Sua 一键更新主题及其他 AUR 包。
安装的时候会输出以下信息,上面提示:需要手动添加 source /usr/lib/spaceship-prompt/spaceship.zsh 到.zshrc中。
:: 进行安装吗? [Y/n]
(1/1) 正在检查密钥环里的密钥 [##################################] 100%
(1/1) 正在检查软件包完整性 [##################################] 100%
(1/1) 正在加载软件包文件 [##################################] 100%
(1/1) 正在检查文件冲突 [##################################] 100%
(1/1) 正在检查可用存储空间 [##################################] 100%
:: 正在处理软件包的变化...
(1/1) 正在安装 spaceship-prompt [##################################] 100%
Add this line to your .zshrc to enable spaceship:
source /usr/lib/spaceship-prompt/spaceship.zsh
:: 正在运行事务后钩子函数...
(1/1) Arming ConditionNeedsUpdate...
其他系统和其他的安装方式请参考 Spaceship 官方文档,以获取最新安装说明、高级配置教程:https://spaceship-prompt.sh/getting-started/。
Oh My Zsh 配置
Oh My Zsh 的所有配置都集中在用户主目录下的 .zshrc 文件中,后续的插件启用、主题更换等操作都需修改该文件。这是一份我自用的,适配 spaceship 主题的.zshrc 配置,可直接替换或参考修改:
export ZSH="$HOME/.oh-my-zsh"
# ZSH_THEME="spaceship"
# 配置 spaceship-prompt
SPACESHIP_PROMPT_ORDER=(
user # 用户名
host # 主机名
dir # 当前目录
time # 时间
git # Git 信息
node # Node.js 版本
package # 包信息
exec_time # 命令执行时间
battery # 电池状态
exit_code # 退出代码
char # 提示符字符
)
# 时间设置
SPACESHIP_TIME_SHOW=true
SPACESHIP_TIME_FORMAT="%D{%H:%M:%S}"
SPACESHIP_TIME_COLOR="yellow"
# 用户设置 - 配置为显示前缀[
SPACESHIP_USER_SHOW=always
SPACESHIP_USER_COLOR="green"
SPACESHIP_USER_SUFFIX=""
# 主机设置 - 配置为显示@和后缀]
SPACESHIP_HOST_SHOW=always
SPACESHIP_HOST_COLOR="magenta"
SPACESHIP_HOST_PREFIX="@"
SPACESHIP_HOST_SUFFIX=" : "
# 目录设置
SPACESHIP_DIR_SHOW=true
SPACESHIP_DIR_TRUNC=3
SPACESHIP_DIR_COLOR="cyan"
SPACESHIP_DIR_PREFIX="" # 设为空字符串移除"in"
SPACESHIP_DIR_SUFFIX=" "
# Git 设置
SPACESHIP_GIT_SHOW=true
SPACESHIP_GIT_PREFIX="on "
SPACESHIP_GIT_SUFFIX=" "
SPACESHIP_GIT_BRANCH_COLOR="blue"
SPACESHIP_GIT_STATUS_COLOR="red"
SPACESHIP_GIT_STATUS_UNTRACKED="?"
SPACESHIP_GIT_STATUS_ADDED="+"
SPACESHIP_GIT_STATUS_MODIFIED="!"
SPACESHIP_GIT_STATUS_RENAMED="»"
SPACESHIP_GIT_STATUS_DELETED="✘"
SPACESHIP_GIT_STATUS_STASHED="$"
SPACESHIP_GIT_STATUS_UNMERGED="="
SPACESHIP_GIT_STATUS_AHEAD="⇡"
SPACESHIP_GIT_STATUS_BEHIND="⇣"
SPACESHIP_GIT_STATUS_DIVERGED="⇕"
# 语言环境设置
SPACESHIP_NODE_SHOW=true
SPACESHIP_NODE_COLOR="green"
SPACESHIP_NODE_PREFIX="using "
SPACESHIP_NODE_SUFFIX=" "
SPACESHIP_NODE_SYMBOL="⬢ "
# 提示符字符设置
SPACESHIP_DIR_SHOW=true
SPACESHIP_CHAR_SYMBOL="$ "
SPACESHIP_CHAR_PREFIX="\n"
SPACESHIP_CHAR_COLOR_SUCCESS="green"
SPACESHIP_CHAR_COLOR_FAILURE="red"
SPACESHIP_CHAR_COLOR_SECONDARY="yellow"
# 退出代码设置
SPACESHIP_EXIT_CODE_SHOW=true
SPACESHIP_EXIT_CODE_SYMBOL="✘ "
# 电池状态设置
SPACESHIP_BATTERY_SHOW=always
SPACESHIP_BATTERY_THRESHOLD=10
SPACESHIP_BATTERY_COLOR_CHARGING="green"
SPACESHIP_BATTERY_COLOR_CHARGED="green"
SPACESHIP_BATTERY_COLOR_DISCHARGING="yellow"
SPACESHIP_BATTERY_SYMBOL_CHARGING="↑"
SPACESHIP_BATTERY_SYMBOL_CHARGED="●"
SPACESHIP_BATTERY_SYMBOL_DISCHARGING="↓"
# 命令执行时间设置
SPACESHIP_EXEC_TIME_SHOW=true
SPACESHIP_EXEC_TIME_PREFIX="took "
SPACESHIP_EXEC_TIME_SUFFIX=" "
SPACESHIP_EXEC_TIME_COLOR="yellow"
SPACESHIP_EXEC_TIME_THRESHOLD=500
SPACESHIP_EXEC_TIME_FORMAT="%dms"
# 插件
plugins=(
git
zsh-autosuggestions # 自动补全
zsh-syntax-highlighting # 语法高亮
)
source $ZSH/oh-my-zsh.sh
# 使用包管理器安装需要加上
source /usr/lib/spaceship-prompt/spaceship.zsh
配置文件可直接覆盖或追加到 ~/.zshrc 中:
# 备份原.zshrc文件(可选但推荐)
cp ~/.zshrc ~/.zshrc.bak
# 使用vim打开文件,将上述完整配置粘贴进去并保存
vim ~/.zshrc
# 或使用VS Code打开文件
code ~/.zshrc
新配置立即生效并重启 Zsh 进程,确保所有配置彻底加载:
source ~/.zshrc && exec zsh