Top 10 JQ -Befehle, die jeder Linux -Entwickler wissen sollte

Top 10 JQ -Befehle, die jeder Linux -Entwickler wissen sollte

JQ ist ein vielseitiger Befehlszeilen-JSON-Prozessor für Linux, mit dem Entwickler JSON-Daten schnell und effizient analysieren, filtern und transformieren können. Die leistungsstarken Funktionen machen es zu einem unverzichtbaren Tool für alle, die mit JSON -Dateien unter Linux -Systemen arbeiten. In diesem Artikel werden wir die 10 wichtigsten JQ -Befehle abdecken, die jeder Linux -Entwickler wissen sollte, um seine JSON -Verarbeitungsaufgaben zu optimieren.

Beispiel JSON -Dateiinhalt

Für dieses Tutorial können Sie das folgende Beispiel JSON -Daten in einer Datei benannt verwenden Eingang.JSON. Diese JSON -Daten stellen eine Reihe von Personen mit ihren jeweiligen Namen, Altersgruppen, Ländern und Adressen dar:

["Name": "Alice", "Alter": 35, "Land": "USA", "Adresse": "Street": "123 Main St", "City": "New York", "Staat ":" NY "," ZIP ":" 10001 ", " Name ":" Bob "," Alter ": 28," Land ":" Kanada "," Adresse ": " Street ":" 456 Maple Ave "," Stadt ":" Toronto "," Provinz ":" On "," Postal_code ":" M5v 1A1 ", " Name ":" Charlie "," Alter ": 42," Land ": "USA", "Adresse": "Street": "789 Oak St", "Stadt": "San Francisco", "Staat": "CA", "Zip": "94102", "Name" : "David", "Alter": 23, "Land": "Kanada", "Adresse": "Street": "321 Pine St", "Stadt": "Vancouver", "Provinz": "BC", "postal_code": "v6b 2p4"]
12345678910111213141516171819202122232425262728293031323334353637383940414243444546["Name": "Alice", "Alter": 35, "Land": "USA", "Adresse": "Street": "123 Main St", "City": "New York", "Staat ":" NY "," ZIP ":" 10001 ", " Name ":" Bob "," Alter ": 28," Land ":" Kanada "," Adresse ": " Street ":" 456 Maple Ave "," Stadt ":" Toronto "," Provinz ":" On "," Postal_code ":" M5v 1A1 ", " Name ":" Charlie "," Alter ": 42," Land ": "USA", "Adresse": "Street": "789 Oak St", "Stadt": "San Francisco", "Staat": "CA", "Zip": "94102", "Name" : "David", "Alter": 23, "Land": "Kanada", "Adresse": "Street": "321 Pine St", "Stadt": "Vancouver", "Provinz": "BC", "postal_code": "v6b 2p4"]

Speichern Sie diesen JSON -Inhalt in einer Datei mit dem Namen "Eingang.json ” und verwenden Sie es als Eingabe für die verschiedenen JQ -Befehle im Tutorial. Diese Beispieldaten helfen Ihnen dabei, die verschiedenen JQ -Befehle und -Techniken, die im Artikel beschrieben wurden, besser zu verstehen und zu üben.

10 JQ -Befehlsbeispiele für Linux -Entwickler

  1. Print JSON -Daten
  2. Übergeben Sie die JSON -Datei einfach an den JQ -Befehl, gefolgt von einem Zeitraum (.):

    JQ '.'Eingabe.JSON  

  3. Abrufen Sie einen bestimmten JSON -Schlüssel ab
  4. Verwenden Sie die folgende Syntax, um den Wert eines bestimmten Schlüssels aus einem JSON -Objekt zu extrahieren:

    JQ '.Taste 'Eingabe.JSON
    1JQ '.Taste 'Eingabe.JSON

    Zum Beispiel den Wert des Werts der "Name" Schlüssel, Verwendung:

    JQ '.Name 'Eingabe.JSON  

  5. Zugang verschachtelte JSON -Werte
  6. Verwenden Sie den Punkt, um auf verschachtelte JSON -Werte zuzugreifen (DOT (.) Notation:

    JQ '.Key1.Key2.key3 'Eingabe.JSON
    1JQ '.Key1.Key2.key3 'Eingabe.JSON

    Zum Beispiel den Wert des Werts der "Stadt" Schlüssel unter "Adresse", verwenden:

    JQ '.Adresse.Städte -Input.JSON  

  7. Iterieren Sie über JSON -Arrays
  8. Verwenden Sie die quadratischen Klammern ([]) um über JSON -Arrays zu iterieren:

    JQ '.[] 'Eingabe.JSON  

    Verwenden Sie das Rohr, um bestimmte Schlüssel aus jedem Objekt innerhalb des Arrays zu extrahieren (das Rohr|) Operator:

    JQ '.[] | .Taste 'Eingabe.JSON  

  9. Filter JSON -Daten
  10. Verwenden Sie die Auswahl der Funktion: Um JSON -Daten basierend auf bestimmten Bedingungen zu filtern:

    JQ '.[] | wählen(.Key == "Wert") 'Eingabe.JSON
    1JQ '.[] | wählen(.Key == "Wert") 'Eingabe.JSON

    Zum Beispiel, um Objekte in einem Array mit einem zu filtern "Alter" größer als 30, verwenden:

    JQ '.[] | wählen(.Alter> 30) 'Eingabe.JSON  

  11. Karte und transformieren JSON -Daten
  12. Um JSON -Daten zu kartieren und zu transformieren, verwenden Sie die Curly -Klammern ():

    JQ '.[] | Key1: .Key1, Key2: .key2 'Eingabe.JSON
    1JQ '.[] | Key1: .Key1, Key2: .key2 'Eingabe.JSON

    Zum Beispiel ein neues JSON -Objekt nur mit dem erstellen "Name" Und "Alter" Schlüssel, verwenden Sie:

    JQ '.[] | Name: .name Alter: .Alter 'Eingabe.JSON  

  13. Kombinieren Sie mehrere JSON -Dateien
  14. Verwenden Sie die Zusammenführung von zwei JSON -Dateien die * Operator:

    JQ -S '.[0] * .[1] 'Datei1.JSON -Datei2.JSON  

  15. Arithmetische Operationen durchführen
  16. JQ kann arithmetische Operationen mit numerischen JSON -Werten ausführen:

    JQ '.Nummer 1 + .Number2 'Eingabe.JSON
    1JQ '.Nummer 1 + .Number2 'Eingabe.JSON

    Verwenden Sie beispielsweise die Summe von zwei Zahlen in einer JSON -Datei: Verwenden Sie:

    JQ '.Nummer 1 + .Number2 'Eingabe.JSON  

  17. Sortieren Sie JSON -Daten
  18. Verwenden Sie das, um JSON -Daten basierend auf einem bestimmten Schlüssel zu sortieren 'Sortieren nach' Funktion:

    JQ '.[] | Sortieren nach(.Schlüssel) 'Eingabe.JSON
    1JQ '.[] | Sortieren nach(.Schlüssel) 'Eingabe.JSON

    Zum Beispiel eine Reihe von Objekten nach dem sortieren "Alter" Schlüssel, Verwendung:

    JQ '.[] | Sortieren nach(.Alter) 'Input.JSON  

  19. Gruppe JSON -Daten
  20. Verwenden Sie die anhand eines bestimmten Schlüssels anhand eines bestimmten Schlüssel 'gruppiere nach' Funktion:

    JQ 'Group_by (.Schlüssel) 'Eingabe.JSON
    1JQ 'Group_by (.Schlüssel) 'Eingabe.JSON

    Zum Beispiel, um eine Reihe von Objekten nach dem zu gruppieren "Land" Schlüssel, Verwendung:

    JQ 'Group_by (.Land) 'Input.JSON  

Abschluss

Diese Top 10 Essential JQ -Befehle bieten eine solide Grundlage für Linux -Entwickler, die mit JSON -Dateien arbeiten. Wenn Sie diese Befehle beherrschen.

Wenn Sie Erfahrungen mit JQ sammeln, werden Sie noch fortgeschrittenere Funktionen und Techniken entdecken, die Ihren spezifischen Anforderungen gerecht werden. Das JQ-Befehlszeilen-Tool ist ein unschätzbares Vorteil für jeden Entwickler, der mit JSON-Daten unter Linux-Systemen arbeitet, und das Wissen, dass diese wichtigen Grundsätze ein starker Ausgangspunkt auf Ihrem Weg zum JQ-Power-Benutzer werden, dienen als starker Ausgangspunkt.

Um Ihr JQ -Wissen weiter zu erweitern, sollten Sie in die offizielle JQ -Dokumentation eintauchen (https: // stedolan.Github.IO/JQ/Manual/) und Erkundung von Community -Ressourcen wie Tutorials, Blog -Posts und Foren. Wenn Sie Ihre JQ -Fähigkeiten weiterhin schärfen, werden Sie das volle Potenzial dieses leistungsstarken JSON -Verarbeitungswerkzeugs ausschütten und es zu einem integralen Bestandteil Ihres Linux -Entwicklungs -Toolkits macht.