14 个版本
0.4.4 | 2023 年 5 月 16 日 |
---|---|
0.4.3 | 2023 年 5 月 16 日 |
0.4.2 | 2019 年 11 月 13 日 |
0.4.0 | 2018 年 5 月 3 日 |
0.1.1 | 2018 年 3 月 30 日 |
在 值格式化 中排名 #357
每月下载 85 次
98KB
512 行
pipecolor
终端过滤器,用于着色输出
描述
pipecolor 是一个终端过滤器,用于着色输出。您可以使用正则表达式自定义着色规则。
演示
安装
从 发布页面 下载,并提取到 PATH 目录中。
或者您可以使用 cargo 进行安装。
cargo install pipecolor
将着色规则文件放入 ~/.pipecolor.toml
。
本仓库中的 sample/pipecolor.toml
是一个示例。
用法
pipecolor 可以通过管道接收输入,并着色输出。
$ cat sample/access_log | pipecolor -c ./sample/pipecolor.toml
可以指定文件名。
$ pipecolor -c ./sample/pipecolor.toml sample/maillog
如果输出被重定向到文件,则自动禁用着色。您可以使用 pipecolor --mode always
强制着色。
着色规则
请参阅示例规则 sample/pipecolor.toml
。
[[lines]]
pat = "^(.*?) .*? .*? \\[(.*?)\\] \".*?\" .*? .*? \".*?\" \"(.*?)\""
colors = ["White", "LightGreen", "LightBlue", "Green"]
[[lines.tokens]]
pat = "GET"
colors = ["LightCyan"]
[[lines.tokens]]
pat = "POST"
colors = ["LightYellow"]
[[lines.tokens]]
pat = "HEAD"
colors = ["LightMagenta"]
lines.pat
是一个用于指定着色行的正则表达式。如果表达式匹配,则匹配的行将被着色到 lines.colors
中指定的颜色。
lines.colors
是一个颜色数组,第一个颜色用于着色整个行。其余颜色用于着色表达式中的捕获组。在示例中,整个行被着色为 白色
,第一个被 (.*?)
捕获的组被着色为 浅绿色
。
lines.tokens
指定要着色匹配行的特殊令牌。
如果不需要任何令牌,则 tokens
可以是空列表。
[[lines]]
pat = "^(.*?) .*? .*? \\[(.*?)\\] \".*?\" .*? .*? \".*?\" \"(.*?)\""
colors = ["White", "LightGreen", "LightBlue", "Green"]
tokens = []
可用的颜色
以下是可以用的颜色。
- 黑色
- 蓝色
- 青色
- 默认
- 绿色
- 浅黑色
- 浅蓝色
- 浅青色
- 浅绿色
- 浅品红色
- 浅红色
- 浅白色
- 浅黄色
- 品红色
- 红色
- 白色
- 黄色
依赖项
~7-18MB
~201K SLoC