这篇文章介绍一下有关终端颜色的相关的一些基础内容,主要围绕着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权限的文件等)。

简单来说,CLICOLOR就是一个开关,设定为Yes,LSCOLORS种的颜色设定才会起效。如下结果示例可以看到,设定CLICOLOR之前即使LSCOLORS被设定了也无法正常显示。

LSCOLORS说明

缺省状态下macOS的LSCOLORS的内容为exfxcxdxbxegedabagacad,简单来说又如下规则:

  • 每个字母代表一种颜色
  • 大写字母的颜色代表粗体,小写代表普通类型
  • 2个字母分为一组,用于设定一种文件类型(Unix下一切皆文件)的类型
  • 一共22个字母,所以分为11种,代表着一共定义了11种文件类型。

所以这里面需要了解的是可以设定的颜色和文件类型都是哪些。常见的颜色的信息如下所示:

字母(小写) 颜色说明 字母(大写) 颜色说明
a 黑色 A 黑色粗体
b 红色 B 红色粗体
c 绿色 C 绿色粗体
d 棕色 D 棕色粗体
e 蓝色 E 蓝色粗体
f 洋红色 F 洋红色粗体
g 青色 G 青色粗体
h 浅灰色 H 浅灰色粗体
x 系统默认颜色

11种文件类型信息如下所示

序号 类型说明
1 目录
2 链接
3 socket文件
4 管道文件
5 可执行文件
6 块设备文件
7 字块设备文件
8 设定了suid的可执行文件
9 设定了guid的可执行文件
10 拥有sticky位的目录(组外用户拥有写权限)
11 没有sticky位的目录(组外用户拥有写权限)

所以结合上述内容,缺省下的macOS的终端颜色的说明信息如下所示

序号 类型说明 前景色设定 前景色说明 背景色设定 背景色说明
1 目录 e 蓝色 x 系统默认颜色
2 链接 f 洋红色 x 系统默认颜色
3 socket文件 c 绿色 x 系统默认颜色
4 管道文件 d 棕色 x 系统默认颜色
5 可执行文件 b 红色 x 系统默认颜色
6 块设备文件 e 蓝色 g 青色
7 字块设备文件 e 蓝色 d 棕色
8 设定了suid的可执行文件 a 黑色 b 红色
9 设定了guid的可执行文件 a 黑色 g 青色
10 拥有sticky位的目录(组外用户拥有写权限) a 黑色 c 绿色
11 没有sticky位的目录(组外用户拥有写权限) a 黑色 d 棕色

Terminal设定

macOS缺省的Terminal为黑白色,当然也可以使用其他的profile,可以使用command + ,快捷键或者Terminal -> preferences进行设定,也可以做一些定制的修改与设定。

当然缺省的Terminal的使用感受和iTerm2、Oh My Zsh、tmux或者GNU Screen等相比还是有很大差距的,不过好处就是不需要额外安装。

macOS终端颜色的设定方法与说明:CLICOLOR与LSCOLORS相关推荐

  1. macOS终端颜色的设定:设定自己的LSCOLOR配色

    如果不使用iTerm2.Oh My Zsh中的配色和各种profile,缺省的终端颜色一般是各种文件的设定,所以缺省可以通过设定LSCOLORS和CLICOLORS来进行设定和定制自己期望的颜色. 颜 ...

  2. MacOS(Catalina):SIP设定方法

    这篇文章以MacOS的Catalina版本为例介绍一下SIP的设定方法. SIP SIP 是System Integrity Protection(系统完整性保护)的缩写,在实际使用的时候会碰到暂时将 ...

  3. MacOS基础:代理服务器squid的DNS设定方法

    这篇文章以squid使用时的错误问题对应为例,介绍一下squid上设定DNS的方法. 目录 现象 错误原因 设定方法 重启squid服务 结果确认 总结 现象 liumiaocn:~ liumiao$ ...

  4. macos终端美化_关于macOS终端美化的最轻松的指南Z Shell中的速成课程

    macos终端美化 Speeding it up more than the standard bash terminal that comes with your MacOS by using iT ...

  5. OS X终端颜色[关闭]

    我是OS X的新手,在使用Ubuntu Linux一段时间后刚接触Mac. 我要弄清楚的许多事情是终端窗口中没有颜色-例如运行ls -la或git status时显示的颜色(在Linux上). 我只是 ...

  6. python加颜色_Python 给屏幕打印信息加上颜色的实现方法

    语法 print('\033[显示方式;字体色;背景色m文本\033[0m') # 三种设置都可以忽略不写,都不写则为默认输出 配置如下 # 字体 背景 颜色 # ------------------ ...

  7. ubuntu下打开matlab_ubuntu终端命令启动matlab方法

    让所有用户都有权限使用matlab,在终端输入 sudo gedit /etc/profile 在后行写 export MATLABPATH=/home/ubuntu/MATLAB/R2016b:$M ...

  8. macos 终端下载_如何使用终端下载macOS更新

    macos 终端下载 Tired of opening the Mac App Store to install macOS updates? Use the Terminal instead. 厌倦 ...

  9. linux更改终端颜色_如何更改Linux终端的颜色

    linux更改终端颜色 您可以使用特殊的ANSI编码设置在Linux终端中添加颜色,可以在终端命令或配置文件中动态添加颜色,也可以在终端仿真器中使用现成的主题. 无论哪种方式,黑色屏幕上的怀旧绿色或琥 ...

最新文章

  1. python实现自动打电话软件_用Python拨打电话
  2. onclick 获取点击之后的img 的id_前端,点击按钮跳出视频带蒙层,且视频永远居于屏幕中间...
  3. python能做软件开发吗-python代码能做成软件吗
  4. 现在不坚持,以后都会放弃
  5. RocketMQ控制台安装教程
  6. 中国农业银行数据中心智能布线系统
  7. OpenGL GLSL Shader Subroutines函数的实例
  8. java绑定变量怎么加_在JAVA 源程序中编写SQL语句时使用ORACLE 绑定变量
  9. OC如何跳到系统设置里的各种设置界面
  10. springboot starter工作原理_98,谈谈SpringBoot的工作原理
  11. MongoDB查询某个字段存在的语句
  12. 异常值(outlier)
  13. python合并表格用什么库_python合并多个excel表格数据库-python实现excel合并
  14. jira 查找issue_Python操作Jira方法
  15. if else 的使用
  16. android中android:wight详解
  17. 软件测试研究生院校排名,自动化专业考研学校有哪些 最新考研院校排名
  18. 软件测试拿了几个20K offer,分享一波面经
  19. 微信拍一拍怎么撤回(无法撤回原因是这样的)
  20. linux内核中的文件描述符(一)--基础知识简介

热门文章

  1. 数字证书连接服务器异常,连接时Socket.io + SSL +自签名CA证书出现错误
  2. AMM敏捷成熟度评估框架介绍
  3. mysql解决Access denied for user ''@'localhost' to database 'mysql'没有mysql库
  4. 一篇文章入门Mysql
  5. python开发环境部署以及调试教程
  6. 计算机组成原理-原理篇:指令与运算-12理解电路:从电报机到门电路,我们如何做到“千里传信”?
  7. 以小饭桌网站为例介绍抓取动态网页的数据【python爬虫入门进阶】(12)
  8. 【证券相关】终值和现值
  9. 改变无数人命运的上证指数
  10. NXP恩智浦集成开发环境IDE S32DS下载教程(最全)