【发布时间】:2015-08-26 02:46:49
【问题描述】:
jq 之类的工具对于以声明方式从 line-delimited JSON 中提取和过滤内容非常有用。但是,它似乎需要将所有对象放入内存中以执行诸如排序之类的操作,并且通常利用现有的 *NIX 工具来处理 JSON 中的一个或多个字段可能很有用同时保留原始 JSON blob。
例如,给定来自 Twitter API 的行分隔 JSON,我想按时间戳对推文 JSON blob 进行排序。这可以通过将 Twitter 日期格式转换为 ISO8601(其字典顺序和时间顺序相同)、在 JSON 推文 blob 前面加上该日期、将流传递给 GNU sort 和 cutting 来删除前置日期。
虽然可以使用mkfifo 和paste 来实现这一点,但我希望通过使用jq 来获得更简洁的解决方案。
【问题讨论】: