这篇文章介绍一下有关终端颜色的相关的一些基础内容,主要围绕着CLICOLOR与LSCOLORS两个环境变量。
缺省设定
以macOS为例,这两个环境变量的缺省设定如下所示:
liumiaocn:~ liumiao$ sw_vers
ProductName: Mac OS X
ProductVersion: 10.14
BuildVersion: 18A391
liumiaocn:~ liumiao$ echo $LSCOLORS
exfxcxdxbxegedabagacad
liumiaocn:~ liumiao$ echo $CLICOLOR
Yes
liumiaocn:~ liumiao$
ls命令
从ls的man的信息中可以获得如下内容
CLICOLOR的作用
- -G选项:用于输出可以设定为黑白之外的其他色彩,此选项与在环境变量中设定CLICOLOR等效(在linux下是–color)。
缺省也可以看到在macOS的缺省的terminal中,CLICOLOR缺省被设定为Yes,所以这就是使用ls命令无需加入-G在输出中就能看到各种颜色的原因。CLICOLR设定之后会通过LSCOLORS中指定的颜色(ANSI COLOR)来显示不同类型的文件(普通文件、目录、socket文件、sbit权限的文件等)。