Terminal
LS_COLORS 用於 256 色終端
我認為 ls 顏色定義為
<file_type>=[<bg(40-47)>];<font_spec(0:5)>;<font_color(30-37)>
但是,我最近發現這裡有更多的顏色和顏色被指定為,例如:
.tar 00;38;5;61
對於 256 色終端。
這個定義是什麼意思?
指令的參數
LS_COLORS
是作為轉義序列的一部分寫入終端的字元串。顯示文件名時,ls
寫入\e[
,然後是與文件類型關聯的字元串,然後m
是 ,然後是文件名,然後\e[0m
(其中\e
表示轉義字元)。這是一個轉義序列,它告訴 xterm 和兼容的終端(現在大多數)改變顏色和其他文本屬性(在文件中。不關心字元序列的含義或它包含多少分號。CSI *Pm* m``ls
舊終端僅支持 8 種前景色,由數字 30 到 37 指定。支持更多顏色的終端使用轉義序列,其中Ps是顏色編號,或者Pr 、 Pg 、 Pb是RGB 值。這些可以與其他屬性結合使用,例如粗體藍色文本。
\e[38;5;*Ps*m``\e[38;2;*Pr*;*Pg*;*Pb*m``\e38;5;61;1m``\e38;2;95;95;175;1m