Wie kann ich eine JSON-Datei mit den richtigen Einrückungen und allem hübsch formatieren?

Ich habe eine JSON-Datei unter CentOS, in der sich der gesamte Text in derselben Zeile befindet. Wie kann ich es hübsch mit den richtigen Einrückungen und allem formatieren?

Kommentare

  • Können Sie uns eine Beispieldatei zeigen? Muss dies automatisch erfolgen? Wenn nicht, laden Sie es einfach in einen anständigen Texteditor und führen Sie es manuell aus (wählen Sie in Emacs alles und M-X indent-selection aus).
  • Schauen Sie sich jq. Auch sehr praktisch, wenn Sie JSON verarbeiten möchten.

Antwort

Verwenden Sie jq ein sehr guter JSON-Prozessor und aus persönlicher Sicht der beste auf dem Markt erhältliche

für nur hübschen Druck, verwenden Sie

jq . file_name 

Kommentare

  • Das Problem, das ich derzeit mit jq habe, ist, dass es sehr liberal ist. Ich möchte im Grunde nur, dass es Leerzeichen ändert, aber stattdessen ändert es Dinge wie 1.23e5 in 123000 und 0 in 0.0 und NaN in null und solche Dinge. Aus diesem Grund kann ich ' ihm nicht mehr vertrauen. ' ist nicht nur ein Formatierer, sondern ' ist gleichzeitig auch ein Desinfektionsmittel, was ich momentan nicht möchte.

Antwort

Wenn Sie kein zusätzliches Paket installieren möchten und Python zur Verfügung haben, können Sie Folgendes tun:

python -m json.tool myfile.json 

Es unterstützt auch das Lesen von STDIN

Antwort

Verwenden Sie das Paket yajl, eine weitere JSON-Bibliothek. Unter CentOS 7 befindet es sich im Basis-Repo und ist höchstwahrscheinlich bereits auf dem Computer installiert.

So drucken Sie eine JSON-Datei hübsch aus:

cat myfile.json | json_reformat 

oder einfach

json_reformat < myfile.json 

So überprüfen Sie, ob eine Datei die richtige JSON-Syntax hat:

json_verify < myfile.json 

Kommentare

  • Installation mit sudo apt install yajl-tools in Ubuntu.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.