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”