可通过修改 ~/.zshrc 中的 ps1 变量定制 macos 终端提示符:一、调整转义序列控制用户名、主机名与路径显示;二、用 %f{color} 和 %f 添加颜色;三、设静态文本或时间戳前缀;四、定义空 prompt_context() 函数隐藏用户主机信息;五、集成 git-prompt.sh 显示时间与 git 分支。

如果您在 macOS 终端中看到默认的提示符样式(如 username@hostname:~%),但希望其更符合个人审美或工作习惯,则可通过修改 shell 配置文件中的 PS1 变量实现深度定制。以下是多种可独立操作的个性化配置方法:
一、修改用户名与主机名显示格式
通过调整 PS1 中的转义序列,可控制提示符中用户名、主机名、当前路径等元素的呈现方式,避免冗余信息干扰视线,同时提升识别效率。
1、打开终端,执行命令编辑 zsh 配置文件:nano ~/.zshrc。
2、在文件末尾添加自定义 PS1 行,例如仅显示用户名与当前目录:export PS1="%n:%~ %# "。
3、若需隐藏主机名但保留用户名,可使用:export PS1="%n:%~ %# "(%m 默认为主机名,省略即不显示)。
4、按 Control+O 保存,回车确认,再按 Control+X 退出编辑器。
5、运行 source ~/.zshrc 立即应用新提示符。
二、为提示符各部分添加颜色
利用 zsh 内置的 %F{color} 和 %f 色码机制,可对用户名、主机名、路径、符号等不同段落分别着色,显著增强视觉层次与可读性。
1、再次编辑配置文件:nano ~/.zshrc。
2、替换或新增 PS1 行,例如:export PS1="%F{cyan}%n%f@%F{magenta}%m%f:%F{yellow}%~%f %# "。
3、支持的颜色关键词包括:red、green、yellow、blue、magenta、cyan、white。
4、保存退出后,执行 source ~/.zshrc 刷新生效。
三、完全替换提示符前缀为静态文本
该方法跳过动态变量解析,直接用固定字符串替代默认前缀,适用于需要统一标识(如项目代号、环境标签)的场景。
1、编辑 ~/.zshrc 文件。
2、设置纯文本前缀,例如:export PS1="[DEV] $USER@%m:%~ %# "。
3、也可嵌入时间戳增强实用性:export PS1="[%*] %n@%m:%~ %# "(%* 显示时:分:秒)。
4、保存并执行 source ~/.zshrc 完成加载。
四、隐藏用户名与主机名(极简模式)
当仅需路径与输入符时,可通过覆盖 zsh 主题函数 prompt_context() 实现彻底隐藏,不依赖 PS1 重写,兼容 oh-my-zsh 等框架。
1、在 ~/.zshrc 底部添加函数定义:
prompt_context() { }
2、该空函数将屏蔽默认的用户@主机段落,使提示符变为类似 :~ %# 的极简形式。
3、保存文件后运行 source ~/.zshrc。
五、启用时间与 Git 分支动态信息
在提示符中实时显示当前时间及所在 Git 仓库的分支名,有助于多任务上下文追踪与版本操作确认。
1、确保已安装 git 并配置好 git-prompt.sh(通常位于 /usr/local/etc/bash_completion.d/git-prompt.sh 或 Homebrew 安装路径)。
2、在 ~/.zshrc 中添加:
source /usr/local/etc/bash_completion.d/git-prompt.sh
export PS1="%* [%n@%m] %~$(__git_ps1 ' (%s)') %# "
3、其中 %* 显示系统时间,$(__git_ps1 ' (%s)') 在 Git 目录下自动追加当前分支名。
4、保存并执行 source ~/.zshrc 激活功能。










