6个稳定版本
2.0.0 | 2024年8月4日 |
---|---|
1.1.1 | 2023年8月1日 |
1.0.2 | 2023年7月31日 |
1.0.1 | 2023年7月30日 |
#377 在 命令行工具
每月下载量 125次
13KB
225 行
LiveJQ
livejq
是一个类似 jq
的JSON解析器,但设计用于在连续输入时工作,不会在无效JSON上崩溃。带有json过滤器。
它使用 livejq.toml
文件来指定 过滤规则。
用例
当你有一个打印日志的程序,其中可能包含其他格式,如文本和JSON,并且你想更好地可读性解析JSON时,你可以使用 livejq
来解析JSON,而不会在其他格式上崩溃。
或者当你想在对json进行解析时应用 filters
。
演示
https://github.com/KunalSin9h/livejq/assets/82411321/71907858-5150-4efe-8c0f-58bb1c0dc591
安装
使用 cargo
进行安装
cargo install livejq
或者你可以在 发布页面 中找到 binaries
用法
./your_program | livejq
过滤器
要应用过滤,你需要在项目根目录中创建 livejq.toml
文件。
它包含 labels
。 labels 是可以应用 -f
/ --filter
标志的过滤标签。
示例配置文件
# livejq.toml
allow = ["name"] # default
[network-fail] # -f network-fail
allow = ["failed"]
[memory-info] # -f memory-info
allow = ["memory"]
然后以以下方式运行应用程序
./your_program | livejq -f network-fail
# you can apply multiple filters
./your_program | livejq -f network-fail memory-info
如果没有创建 label
,则使用 default
。对于每个标签,你只能允许或禁止,不能两者兼有。
如果在运行程序时未使用 flag
,则使用 default
标志。
这里
|
用于将my_program
的输出作为输入传递到livejq
。
依赖关系
~1.8–2.8MB
~55K SLoC