Bash shell 终端字符颜色显示

终端的字符颜色是用转义序列控制的,是文本模式下的系统显示功能,和具体的语言无关,shell,python,perl等均可以调用。   
转义序列是以 ESC 开头,可以用 \033 完成相同的工作(ESC 的 ASCII 码用十进制表示就是 27, = 用八进制表示的 33)。   
 
\033[显示方式;前景色;背景色m  【背景色可以不用,后面必须以m结尾】
 
显示方式:0(默认值)、1(高亮)、22(非粗体)、4(下划线)、24(非下划线)、5(闪烁)、25(非闪烁)、7(反显)、27(非反显)   
 
前景色:30(黑色)、31(红色)、32(绿色)、 33(黄色)、34(蓝色)、35(洋红)、36(青色)、37(白色)   
 
背景色:40(黑色)、41(红色)、42(绿色)、 43(黄色)、44(蓝色)、45(洋红)、46(青色)、47(白色)

 

 

#!/usr/bin/env python

search_name = 'zhao'

name_list = ['zhao', 'zhao', 'qian', 'sun', 'du', 'qi', 'wang', 'wei', 'li', 'wang', 'zhao', 'zhou', 'wu', 'zhen']

if search_name in name_list:
    print "find it", search_name
    first_num = 0
    for name_count in xrange(name_list.count(search_name)):
        next_num = name_list[first_num:].index(search_name)
        print "Times %d, the element is \033[2;31;40m %s \033[0m , the index is %d" % (name_count, search_name, (next_num + first_num))
        first_num += next_num + 1
else:
    print "can't find it", search_name

 

#!/usr/bin/env python

search_name = 'zhao'

name_list = ['zhao', 'zhao', 'zhao', 'qian', 'sun', 'du', 'qi', 'wang', 'wei', 'li', 'wang', 'zhao', 'zhou', 'wu', 'zhen']

if search_name in name_list:
    print "find it", search_name

    for name_count in xrange(name_list.count(search_name)):
        if name_count == 0:
            startIndex = name_list.index(search_name)
        else:
            startIndex = name_list.index(search_name, (startIndex + 1) )
        print startIndex

else:
    print "Can't find it", search_name

 

posted @ 2016-07-04 10:52  schangech  阅读(1174)  评论(1编辑  收藏  举报