"grep -v null" am Ende des Befehls zu werfen ist einfach genug, aber in vielen (den meisten?) Situationen, in denen ich eine Abfrage nach einem Feldnamen durchführe, möchte ich keine Datensätze, in denen die Abfrage zu einem führen würde Nichtübereinstimmung auf dem Datensatz.
jq 'foo | select(. == null | not)'
sollte den Trick machen
Hmm, es scheint, als wäre es einfacher, eine allgemeine Befehlszeilenoption für einen breiteren, häufigeren Anwendungsfall zu verwenden, bei dem keine Nullen in der Ausgabe erwünscht sind.
Abwechselnd:
jq '.foo // empty
Hilfreichster Kommentar
Abwechselnd:
jq '.foo // empty