Ich benutze jq , um mit json zu spielen. Ich habe mich gefragt, wie ich etwas bedingt darin drucken soll.
Angenommen, ich interessiere mich für einen Feldanruf geo. Ich habe den folgenden Befehl verwendet und festgestellt, dass es nur einen Eintrag gibt, der geolautet null:
% cat all.json | jq '.geo != null' | sort | uniq -c
1 false
6891 true
Wie kann ich diesen Eintrag nur ausdrucken, ohne alles andere auszudrucken?
Ich habe so etwas wie einen printBefehl im Handbuch nicht gesehen. Und das funktioniert nicht : cat all.json | jq 'if .place == null then . end'. jqbeschwerte sich über Syntaxfehler.
cat all.json | jq 'select(.geo != null) | .geo' > geo-only.json