Bash:
Arbeiten mit JSON
Wie geht das:
Bash selbst hat keine eingebauten JSON-Parsing-Fähigkeiten, aber jq
ist ein leistungsfähiger Kommandozeilen-JSON-Prozessor, der diese Lücke füllt. So nutzen Sie es:
Ein JSON-File lesen:
Beispiel data.json
:
{
"name": "Jane Doe",
"email": "[email protected]",
"location": {
"city": "New York",
"country": "USA"
}
}
Um den Namen aus der JSON-Datei zu lesen und zu extrahieren:
jq '.name' data.json
Ausgabe:
"Jane Doe"
JSON-Daten modifizieren:
Um die Stadt auf “Los Angeles” zu aktualisieren und zurück in die Datei zu schreiben:
jq '.location.city = "Los Angeles"' data.json > temp.json && mv temp.json data.json
JSON aus einer Variablen parsen:
Wenn Sie JSON in einer Bash-Variablen haben, kann jq
es trotzdem verarbeiten:
json_string='{"name": "John Doe", "email": "[email protected]"}'
echo $json_string | jq '.name'
Ausgabe:
"John Doe"
Mit Arrays arbeiten:
Gegeben sei ein Array von Elementen in JSON:
{
"items": ["apple", "banana", "cherry"]
}
Um das zweite Element zu extrahieren (Indizierung beginnt bei 0):
jq '.items[1]' data.json
Ausgabe:
"banana"
Für komplexere Operationen und Filterungen hat jq
ein umfassendes Handbuch und Tutorials online verfügbar, was es zu einem vielseitigen Werkzeug für all Ihre Bash/JSON-Anforderungen macht.