答案1
您的转义序列\e[30;1;45m
可能更容易理解为三个序列的合并:
\e[30m
-- 这意味着“黑色前景”\e[1m
-- 这意味着“明亮的前景”\e[45m
-- 这意味着“洋红色背景”
现在这些颜色序列仅限于 8 种颜色
- 黑色的
- 红色的
- 绿色的
- 黄色的
- 蓝色的
- 品红
- 青色
- 白色的
这些是传统的 ANSI 颜色。
但是,如果您的终端支持,有些序列允许选择 256 种颜色。
\e[38;5;###m
其中###
是 0 到 255 之间的数字将选择前景色。
\e[48;5;###m
同样选择背景颜色。
所以也许\e[38;5;0;1;48;5;92m
可能接近你想要的。
注意:如果您使用 256 色背景设置,那么您还需要使用 256 色前景设置。
FWIW,以下 python 脚本将显示所有背景颜色,可以帮助您选择所需的颜色。
import sys
for i in range(0, 16):
for j in range(0, 16):
code = str(i * 16 + j)
sys.stdout.write(u"\u001b[48;5;" + code + "m " + code.ljust(4))
print u"\u001b[0m"
(取自http://www.lihaoyi.com/post/BuildyourownCommandLinewithANSIescapecodes.html#background-colors)