Mac zsh终端需配置三项才能实现ls彩色输出:启用终端ANSI色彩、设置CLICOLOR=1和LS_COLORS环境变量、添加ls别名;还可选装zsh-syntax-highlighting实现实时输入高亮。
mac 的 zsh 终端默认不会对目录、文件类型做颜色区分,关键不是 zsh 不支持,而是缺少三样东西:终端底层色彩声明、shell 层面的颜色启用开关、以及 ls 命令的实际配色规则。配好这三项,ls 一执行,目录自动变蓝、可执行文件变绿、符号链接带箭头——立刻见效。
启用终端描述文件的完整 ANSI 色彩
macOS Terminal 自带的「Pro」或「Ocean」描述文件已内置 16 色 ANSI 定义,但必须手动设为默认才生效:
- 打开终端 → 顶部菜单「终端」→「偏好设置」→「描述文件」
- 左侧选中「Pro」(深色)或「Ocean」(浅色)
- 右侧切换到「文本」标签页,确认「ANSI 颜色」区域所有色块都显示为实色(非灰白)
- 点右下角「默认」按钮,新打开的窗口即应用色彩支持
在 ~/.zshrc 中启用 CLI 颜色输出
仅终端支持还不够,zsh 需明确告诉命令“请输出颜色”。编辑 ~/.zshrc:
- 运行
nano ~/.zshrc - 在文件末尾添加两行:
export CLICOLOR=1
export LS_COLORS='ExGxFxdaCxDaDahbadacec'
- 保存后执行
source ~/.zshrc - 再运行
ls,目录(蓝色)、压缩包(红褐)、可执行文件(绿色)等都会自动着色
让 ls 默认带颜色(免输 -G 参数)
有些工具或脚本调用 ls 时不加参数,可直接用别名固化颜色行为:
- 在
~/.zshrc中追加:
alias ls='ls -G'
alias ll='ls -lG'
- 再次
source ~/.zshrc,之后所有ls命令都默认彩色输出
(可选)加装语法高亮插件,输入时就看到目录路径变色
上面配置解决的是「命令输出」的颜色,而 zsh-syntax-highlighting 能让你在敲 cd ~/Docu 时,已存在的路径部分实时变蓝,拼错部分变红:
- 安装:
brew install zsh-syntax-highlighting - 在
~/.zshrc最末尾添加:source /usr/local/share/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh - 执行
source ~/.zshrc,即可体验输入过程中的路径高亮

















