Wie kann man json mit jq Standalone drucken?


31

Wenn ich zurzeit eine JSON- Datei mit JQ hübsch ausdrucken möchte , verwende ich Folgendes :

cat file.json | grep jq .

Dennoch würde ich erwarten jq, dass ein Dateiname als Argument akzeptiert wird, ohne dass ich darauf zurückgreifen muss cat.

Die Manpage sagt:

jq [Optionen ...] Filter [Dateien ...]

... Standardmäßig liest jq einen Stream von JSON-Objekten (durch Leerzeichen getrennt) aus stdin. Es können eine oder mehrere Dateien angegeben werden. In diesem Fall liest jq stattdessen Eingaben von diesen.

Noch läuft:

jq file.json

schlägt fehl, indem Kompilierungsfehler ausgelöst werden, für die keine Schlüssel definiert sind.

Wie soll ich die Datei beim Laufen hinzufügen jq?

Antworten:


48
jq . file.json

ist, wonach ich gesucht habe. Mir war nicht klar, dass dies .ein Filter und kein Platzhalter für den weitergeleiteten Inhalt ist:

.

Der absolut einfachste (und am wenigsten interessante) Filter ist .. Dies ist ein Filter, der seine Eingabe übernimmt und unverändert als Ausgabe erzeugt.

Und die Manpage macht deutlich, dass der Filter ein erforderliches Argument ist.

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.