因为暂时找不到合适的iOS客户端开发者,爱折腾的我主动申请要边学习边做开发。于是买了Mac mini,加上普通的键鼠、显示器便开始了Mac的使用之旅。有着linux和c/c++的基础,入门起来倒也算顺风顺水。用惯ubuntu linux这种傻瓜式的linux操作系统,在Mac中很多都需要手工配置。于是便有了今天这篇水文。

从Red Hat的默认bash到ubuntu的dash,ls查看文件时,不同的文件的类型都会用不同的颜色显示出来。但是在Mac的终端下,却是很寡的白色,看起来很不直观。于是查找解决方法,通过google和man ls看到如下说法:

ls-g

所以在bash_profile添加配置如下:

#打开.bash_profile
vi ~/.bash_profile
#输入
alias ls="ls -G"
#:wq保存退出
#使配置文件生效
source ~/.bash_profile

再次执行ls查看时可以看到不同文件类型的颜色区分。上述解决方法只是给ls起了一个别名,如果想定制颜色的话怎么办呢?从帮助文档来看,可以通过定义CLICOLOR选项配置。

ls-lscolors

于是在.bash_profile中追加两行:

export CLICOLOR=1
export LSCOLORS=gxfxaxdxcxegedabagacad
source ~/.bash_profile

这样就可以看到不同的显示颜色。这里的原因如下:

  • CLICOLOR是用来设置是否进行颜色的显示。CLI是Command Line Interface的缩写。
  • LSCOLORS是用来设置当CLICOLOR被启用后,各种文件类型的颜色。LSCOLORS的值中每两个字母为一组,分别设置某个文件类型的文字颜色和背景颜色。

LSCOLORS中一共11组颜色设置,按照先后顺序,分别对以下的文件类型进行设置:

  • directory
  • symbolic link
  • socket
  • pipe
  • executable
  • block special
  • character special
  • executable with setuid bit set
  • executable with setgid bit set
  • directory writable to others, with sticky bit
  • directory writable to others, without sticky bit

LSCOLORS中,字母代表的颜色如下:

  • a黑色
  • b红色
  • c绿色
  • d棕色
  • e蓝色
  • f洋红色
  • g青色
  • h浅灰色
  • A黑色粗体
  • B红色粗体
  • C绿色粗体
  • D棕色粗体
  • E蓝色粗体
  • F洋红色粗体
  • G青色粗体
  • H浅灰色粗体
  • x系统默认颜色

所以,如果我们想把目录显示成红色,就可以把LSCOLORS设置为bxfxaxdxcxegedabagacad就可以了。

 当然,我们可以使用其他比较炫丽的shell来代替bash,比如zsh,这是一款使用比较少的shell,但是其输出的显示结果还是比较不错的。
发现mac与linux理念都是类似的,但是至于unix和linux本质区别目前还没去仔细探索,不过有一种说法不就是linux就是类unix的操作系统吗?目前我也就将mac当作linux来用,比如vim配置直接把之前ubuntu的配置方法搬过来用直接可以使用。

Mac/Bash终端颜色的配置相关问题

发表评论

电子邮件地址不会被公开。 必填项已用*标注

This site uses Akismet to reduce spam. Learn how your comment data is processed.