资讯专栏INFORMATION COLUMN

Linux下设置终端文本的显示属性

Render / 1783人阅读

摘要:通过逸出序列设置终端文本的显示属性,如文本的前景与背景颜色等,形式为用于引导逸出序列,八进制十进制与十六进制分别表示为,通常以反斜杠转义的形式,或表示为指定的显示属性,通过数字表示,可以为单个属性,也可以为由分号分隔的多个属性组成的列表,单

Linux 通过ANSI逸出序列(escape sequences)设置终端文本的显示属性,如文本的前景与背景颜色等,形式为
ESC[{parameters...}m

ESC用于引导逸出序列,八进制、十进制与十六进制分别表示为033/27/0x1b,通常以反斜杠("")转义的形式33,x1b或e表示
{parameters...}为指定的显示属性,通过数字表示,可以为单个属性,也可以为由分号(;)分隔的多个属性组成的列表,单个属性可以位于属性列表的任意位置,不影响设置
m表示显示属性的末尾
ESC,左方括号([),显示属性与m之间都不包含空格,m与随后的文本之间可以包含可选的空格

字符属性:
01:bold,加粗
22:取消加粗
04:underscore,下划线
24:取消下划线
05:blink,闪烁
25:取消闪烁
07:reverse,反显,即翻转前景色与背景色
27:取消反显
08:hidden,隐藏
28:取消隐藏
00:reset,将所有属性与颜色重置为默认

字符/前景颜色:30 - 39
30:black,黑色
31:red,红色
32:green,绿色
33:brown,棕黄色
34:blue,蓝色
35:magenta,紫色
36:cyan,青色
37:white,白色
38:开启下划线,并设置默认前景颜色
39:关闭下划线,并设置默认前景颜色

背景颜色:40 - 49
40:黑色
41:红色
42:绿色
43:棕黄色
44:蓝色
45:紫色
46:青色
47:白色
49:默认背景颜色

终端文本的显示属性可以通过C程序与shell/Python脚本等设置,如bash中

echo -e "e[1;5;31m Successfully.x1b[0m"

表示以加粗红色字体,闪烁显示Successfully.,随后将所有属性恢复默认

或C语言中

printf("33[1;4;32mHello,world33[0m
");

表示以带下划线的加粗绿色字体显示Hello,world,随后将所有属性恢复默认

参考
ascii(7)
console_codes(4)

Bash: Using Colors
http://webhome.csc.uvic.ca/~s...

Bash tips: Colors and formatting (ANSI/VT100 Control sequences)
http://misc.flogisoft.com/bas...

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/24905.html

相关文章

发表评论

0条评论

最新活动
阅读需要支付1元查看
<