mac 终端一般使用的是 zsh;
由于不想安装三方的软件,可以自行编写脚本实现一些效果;
最终效果如下,支持显示git 分支:
git_branch(){
branch="`git branch 2>/dev/null | grep "^\*" | sed -e "s/^\*\ //"`"
if [ "${branch}" != "" ];then
if [ "${branch}" = "(no branch)" ];then
# 返回当前分支最新提交的完整哈希值
branch="(`git rev-parse --short HEAD`...)"
fi
echo " ($branch)"
fi
}
# 设置动态更新 PS1 的函数
update_prompt() {
export PS1="%10F%m%f:%11F%1~%f$(git_branch)
\$ "
}
# 使用 precmd 钩子,在每次命令执行后更新 PS1
autoload -Uz add-zsh-hook
add-zsh-hook precmd update_prompt