BaR*_*Rud 7 ls colors terminal escape-characters
我认为 ls 颜色被定义为
<file_type>=[<bg(40-47)>];<font_spec(0:5)>;<font_color(30-37)>
但是,最近我发现这个地方有更多的颜色和颜色被指定为,例如:
.tar 00;38;5;61
Run Code Online (Sandbox Code Playgroud)
对于 256 色终端。
这个定义是什么意思?
Gil*_*il' 12
LS_COLORS
指令的参数是作为转义序列的一部分写入终端的字符串。显示文件名时,ls
写入\e[
,然后是与文件类型关联的字符串,然后是m
,然后是文件名,然后\e[0m
(其中\e
表示转义字符)。这是一个转义序列,它告诉 xterm 和兼容终端(现在是大多数)改变颜色和其他文本属性(在文档中。不关心字符序列的含义或它包含多少个分号。CSI Pm m
ls
旧终端仅支持8种前景颜色,由30到37,支持更多的颜色终端使用转义序列的数字指定,其中诗是彩色数,或其中镨,PG,铅是RGB值。这些可以与其他属性组合,例如或用于粗体蓝色文本。\e[38;5;Psm
\e[38;2;Pr;Pg;Pbm
\e38;5;61;1m
\e38;2;95;95;175;1m