jq 转换为数组并排序

jq transform to array and sort

假设我有以下 input.log 文件:

{"foo": "1", "foo2": "2"}
{"foo": "3", "foo2": "4"}
{"foo": "5", "foo2": "6"}
{"foo": "7", "foo2": "8"}

我想使用 jq 解析它并根据一些公共键的值对结果进行排序,假设 "foo"键。

我怎样才能做到这一点?谢谢。

要排序,您需要一个数组,您可以使用 --slurp/-s.

获得该数组
jq -sc 'sort_by( .foo )[]' input.log

Demo 在 jqplay