Linux终端的颜色码

本文介绍了如何在Linux终端使用颜色码,特别是在makefile中的应用。通过`make`命令执行不同操作,如常规、加粗、下划线和背景色设置。`@`符号用于隐藏命令本身,`-e`选项启用反斜杠转义。`echo -e "e[0m Text Reset"`用于重置终端颜色。同时,文章展示了如何将颜色码定义为变量,并在C语言、Makefile、Lua和shell脚本中使用这些颜色码的例子。

makefile中示例

regular:
    @echo -e "\e[0;30m Gray -Regular"
    @echo -e "\e[0;31m Red"
    @echo -e "\e[0;32m Green"
    @echo -e "\e[0;33m Yellow"
    @echo -e "\e[0;34m Blue"
    @echo -e "\e[0;35m Purple"
    @echo -e "\e[0;36m Cyan"
    @echo -e "\e[0;37m White"
    @echo -e "\e[0m Text Reset"
bold:
    @echo -e "\e[1;30m Gray -Bold"
    @echo -e "\e[1;31m Red"
    @echo -e "\e[1;32m Green"
    @echo -e "\e[1;33m Yellow"
    @echo -e "\e[1;34m Blue"
    @echo -e "\e[1;35m Purple"
    @echo -e "\e[1;36m Cyan"
    @echo -e "\e[1;37m White"
    @echo -e "\e[0m Text Reset"
underline:
    @echo -e "\e[4;30m Gray -Underline"
    @echo -e "\e[4;31m Red"
    @echo -e "\e[4;32m Green"
    @echo -e "\e[4;33m Yellow"
    @echo -e "\e[4;34m Blue"
    @echo -e "\e[4;35m Purple"
    @echo -e "\e[4;36m Cyan"
    @echo -e "\e[4;37m White"
    @echo -e "\e[0m Text Reset"
background:
    @echo -e "\e[40m Gray -Background"
    @echo -e "\e[41m Red"
    @echo -e "\e[42m Green"
    @echo -e "\e[43m Yellow"
    @echo -e "\e[44m Blue"
    @echo -e "\e[45m Purple"
    @echo -e "\e[46m Cyan"
    @echo -e "\e[47m White"
    @echo -e "\e[0m Text Reset"

以上代码可以直接粘贴到 makefile 中运行,即直接在终端执行命令:
make regular/make bold/make underline/make background即可,你可以看出他们之间的区别
@ 符号的作用:不将后面的命令在终端显示,只显示命令的执行结果,但是不显示命令本身
-e 选项的作用:使能反协杠\的解释功能
@echo -e “\e[0m Text Reset” 是恢复终端的之前的颜色,否则终端的颜色会一直是这条命令上一条显示的颜色

你也可以将那些颜色码直接定义成变量,然后在脚本文件中使用,如下:

COLOR_NONE                  ="\x1B[0m";
#Regular
COLOR_Regular_GRAY          ="\x1B[0;30m"
COLOR_Regular_RED           ="\x1B[0;31m"
COLOR_Regular_GREEN         ="\x1B[0;32m"
COLOR_Regular_YELLOW        ="\x1B[0;33m"
COLOR_Regular_BLUE          ="\x1B[0;34m"
COLOR_Regular_PURPLE        ="\x1B[0;35m"
COLOR_Regular_CYAN          ="\x1B[0;36m"
COLOR_Regular_WHITE         ="\x1B[0;37m"
#Bold
COLOR_Bold_GRAY             ="\x1B[1;30m"
COLOR_Bold_RED              ="\x1B[1;31m"
COLOR_Bold_GREEN            ="\x1B[1;32m"
COLOR_Bold_YELLOW           ="\x1B[1;33m"
COLOR_Bold_BLUE             ="\x1B[1;34m"
COLOR_Bold_PURPLE           ="\x1B[1;35m"
COLOR_Bold_CYAN             ="\x1B[1;36m"
COLOR_Bold_WHITE            ="\x1B[1;37m"
#underline
COLOR_Underline_GRAY        ="\x1B[4;30m"
COLOR_Underline_RED         ="\x1B[4;31m"
COLOR_Underline_GREEN       ="\x1B[4;32m"
COLOR_Underline_YELLOW      ="\x1B[4;33m"
COLOR_Underline_BLUE        ="\x1B[4;34m"
COLOR_Underline_PURPLE      ="\x1B[4;35m"
COLOR_Underline_CYAN        ="\x1B[4;36m"
COLOR_Underline_WHITE       ="\x1B[4;37m"
#background
COLOR_Background_GRAY       ="\x1B[40m"
COLOR_Background_RED        ="\x1B[41m"
COLOR_Background_GREEN      ="\x1B[42m"
COLOR_Background_YELLOW     ="\x1B[43m"
COLOR_Background_BLUE       ="\x1B[44m"
COLOR_Background_PURPLE     ="\x1B[45m"
COLOR_Background_CYAN       ="\x1B[46m"
COLOR_Background_WHITE      ="\x1B[47m"

注:“\x1B”的与上面的“\e”作用一样

  • C语言中的使用:
    printf(“\x1B[1;34m”“hello world”“\x1B[m”)
  • Makefile中的使用:
    @echo -e $(COLOR_Bold_RED)”hello world”$(COLOR_NONE)
  • Lua中的用法:
    print(“\x1B[1;34m”..”hello world”..”\x1B[m”)
  • shell中的使用:
    @echo -e “\x1B[1;34m”“hello world”“\x1B[m”
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值