Führen Sie den folgenden Befehl aus, um JQ auf Ubuntu zu installieren.
$ sudo apt-get install JQ
Lesen von JSON -Daten
Nehmen wir an, Sie haben eine JSON -Variable mit dem Namen deklariert JSondata im Terminal und laufen JQ Befehl mit dieser Variablen, um den Inhalt dieser Variablen zu drucken.
$ JSondata = '["Buch": "Php 7", "Publikation": "Apress",Lesen Sie JSON -Daten mit -C -Option
-c Option verwendet mit dem Befehl jq, um jedes JSON -Objekt in jeder Zeile zu drucken. Nach dem Ausführen des folgenden Befehls wird jedes Objekt der JSondata -Variablen gedruckt.
$ echo "$ jSondata" | JQ -c '.[] 'Lesen einer JSON -Datei
JQ -Befehl kann auch zum Lesen der JSON -Datei verwendet werden. Erstellen Sie eine JSON -Datei namens Students.JSON mit dem folgenden Inhalt, um die nächsten Befehle dieses Tutorials zu testen.
Führen Sie den folgenden Befehl aus, um die Schüler zu lesen.JSON -Datei.
$ jq '.' Studenten.JSONLesen Sie die JSON -Datei mit '|' '
Sie können "|" verwenden Symbol folgendermaßen zum Lesen einer JSON -Datei.
$ CAT -Studenten.JSON | JQ '.''Lesen von Einzelschlüsselwerten
Sie können ein bestimmtes Objekt einfach von einer JSON -Datei mithilfe verwenden JQ Befehl. In Studenten.JSON, Es gibt vier Objekte. Diese sind Roll, Name, Charge und Abteilung. Wenn Sie den Wert von lesen möchten Abteilung Taste nur aus jedem Datensatz und dann ausführen JQ Befehl auf folgende Weise.
$ jq '.[] | .Abteilungsstudenten.JSONMehrere Schlüssel lesen
Wenn Sie zwei oder mehr Objektwerte aus JSON -Daten lesen möchten, erwähnen Sie die Objektnamen, indem Sie Comma (,) im JQ -Befehl trennen. Der folgende Befehl holt die Werte von ab Name Und Abteilung Schlüssel.
$ jq '.[] | .Name, .Abteilungsstudenten.JSONEntfernen Sie den Schlüssel aus JSON -Daten
JQ Der Befehl wird nicht nur zum Lesen von JSON -Daten verwendet, sondern auch zum Anzeigen von Daten durch Entfernen des jeweiligen Schlüssels. Der folgende Befehl druckt alle Schlüsselwerte von Studenten.JSON Datei durch Ausschließen Charge Taste. Karte Und del Funktion werden in verwendet JQ Befehl, die Aufgabe zu erledigen.
$ jq 'Karte (Del (.Batch)) 'Studenten.JSONMapping -Werte
Ohne den Schlüssel aus JSON -Daten zu löschen, können Sie die Kartenfunktion mit JQ -Befehl für verschiedene Zwecke verwenden. Numerische Werte von JSON -Daten können durch Kartenfunktion erhöht oder verringert werden. Erstellen Sie eine JSON -Datei mit dem Namen Nummer.JSON mit dem folgenden Inhalt, um die nächsten Befehle zu testen.
[40,34,12,67,45]Führen Sie den folgenden Befehl aus, um 10 mit jedem Objektwert von hinzuzufügen Zahlen, JSON.
$ jq 'Karte (.+10) 'Zahlen.JSONFühren Sie den folgenden Befehl aus, um 10 von jedem Objektwert von zu subtrahieren Zahlen, JSON.
$ jq 'Karte (.-10) 'Zahlen.JSONSuchen Sie Werte nach Index und Länge
Sie können Objekte aus der JSON -Datei lesen, indem Sie den jeweiligen Index und Länge angeben. Erstellen Sie eine JSON -Datei mit dem Namen Farben.JSON mit den folgenden Daten.
["Rot", "grün", "blau", "gelb", "lila"]Führen Sie den folgenden Befehl aus, um zwei Werte aus dem dritten Farbenindex zu lesen.JSON -Datei.
$ jq '.[2: 4] 'Farben.JSONSie können die Länge oder den Startindex angeben, um Daten aus der JSON -Datei zu lesen. Im folgenden Beispiel wird die Anzahl des Datenwerts nur angegeben. In diesem Fall wird in dem Befehl vier Daten aus dem ersten Farbindex gelesen.JSON.
$ jq '.[: 4] 'Farben.JSONSie können den Startpunkt nur ohne einen Längenwert in angeben JQ Befehl und der Wert können positiv oder negativ sein. Wenn der Startpunkt positiv ist, zählt der Index von der linken Seite der Liste und beginnt von Null. Wenn der Startpunkt negativ ist, zählt der Index von der rechten Seite der Liste und beginnt von einem. Im folgenden Beispiel beträgt der Ausgangspunkt -3. Die letzten drei Werte der Daten werden also angezeigt.
$ jq '.[-3:] 'Farben.JSONWenn Sie mit JSON -Daten arbeiten und Daten entsprechend Ihren Anforderungen analysieren oder manipulieren möchten, hilft Ihnen der JQ -Befehl Ihnen, Ihre Aufgabe zu vereinfachen.