如何在 jq 查询中间调用 --stream?
How do I invoke --stream in the middle of a jq query?
我有一个由换行符分隔的 JSON 列表组成的文件,我想计算其中的总数。我可以通过两次调用 jq 来做到这一点:
cat file.nsj | jq -s ".[] | length" | jq -s "add"
但我更愿意在单个 jq 调用中执行此操作。这可能吗?
如果您的目标只是计算充满列表的文件中对象的数量,您可以这样做:
$ jq -n 'reduce inputs as $i (0; . + ($i | length))' file.nsj
这是 Jeff 解决方案的变体,它使用 -n
、 输入 和 长度 和 添加.
jq -n '[ inputs | length ] | add' file.nsj
我有一个由换行符分隔的 JSON 列表组成的文件,我想计算其中的总数。我可以通过两次调用 jq 来做到这一点:
cat file.nsj | jq -s ".[] | length" | jq -s "add"
但我更愿意在单个 jq 调用中执行此操作。这可能吗?
如果您的目标只是计算充满列表的文件中对象的数量,您可以这样做:
$ jq -n 'reduce inputs as $i (0; . + ($i | length))' file.nsj
这是 Jeff 解决方案的变体,它使用 -n
、 输入 和 长度 和 添加.
jq -n '[ inputs | length ] | add' file.nsj