彩色滤光片
colour-filter的Python项目详细描述
颜色过滤器模块和颜色过滤器命令-行的颜色部分
颜色过滤器命令
colour-filter
命令从其输入读取行,
给线路的一部分上色,并在输出端打印结果。
例如,为生成脚本的输出上色。绿色Info:
所有以红色开头的行。
$ ./build.sh 2>&1| colour-filter '^Info:' green 'Error:.*' red
彩色过滤器模块
ColourFilter
类
__init__()
创建ColourFilter实例。
enableDebug( enable=True )
打开调试输出以帮助理解为什么模式与预期不匹配。
define( pattern, colour )
当在输入颜色的行中找到正则表达式
pattern
时,它在输出上显示为colour
。colour
是由“:”或“;”分隔的列表颜色名称的字符串名称。 例如'red'
或“红色;背景白色”内置的前景色名称是:
bold, black, brown, green, yellow, blue, magenta, cyan, gray, red, lightred, lightgreen, lightyellow, lightblue, lightmagenta, lightcyan ans white.
内置的背景色名称是:
bg-black, bg-brown, bg-green, bg-yellow, bg-blue, bg-magenta, bg-cyan, bg-gray and bg-white.
filterLines( input_file, output_file, line_buffered )
从
input_file
读取行,直到文件结束。 用规定的颜色替换所有匹配的图案。 将每个转换后的行写入output_file
,如果line_buffered
是True
在output_file
上调用flush()
。
为build.log
的线条上色的示例
fromcolour_filterimportColourFilterf=ColourFilter()f.define('Info:','green')f.define('Error:','red;bg-white')withopen('build.log')asinput_file:f.filterLines(input_file,sys.stdout,line_buffered=False)