GNU/Linux >> Linux の 問題 >  >> Linux

LinuxターミナルでJSONファイルをきれいに印刷する方法

JSONファイルは、データのコレクションを人間が読める形式で保存するため、すばらしいものです。ただし、JSONファイルが縮小されている場合、JSONファイルを読み取るのは面倒な場合があります。

例としてこれを取り上げます:

コンピュータはそれを簡単に読むことができます。人間でも読むことができますが、JSONファイルがコンテンツを表示するように適切にフォーマットされていれば、はるかに簡単になります。つまり、JSONファイルは結局このように読み取ることになっています:

ほとんどのテキストエディタをいくつかのプラグインとともに使用して、適切なフォーマットで表示できます。ただし、ターミナルに固執している場合、またはシェルスクリプトでそれを実行したい場合は、状況が異なります。

縮小されたファイルを入手した場合は、LinuxターミナルでJSONファイルをきれいに印刷する方法を紹介します。

Linuxでjqコマンドを使用してJSONをきれいに印刷する

jqはコマンドラインJSONプロセッサです。これを使用して、構造化データのスライス、フィルタリング、マッピング、および変換を行うことができます。ここでは、jqコマンドラインツールの使用について詳しくは説明しません。

jqを使用するには、最初にjqをインストールする必要があります。ディストリビューションのパッケージマネージャーを使用してインストールできます。ユニバースリポジトリを有効にすると、aptコマンドを使用してUbuntuにインストールできます:

sudo apt install jq

インストールしたら、次の方法でJSONファイルをディスプレイにきれいに印刷します。

jq . sample.json

catを使いたくなるかもしれませんが、catコマンドの役に立たない使い方の1つだと思います。

cat sample.json | jq

上記のコマンドは元のJSONファイルに影響を与えないことに注意してください。変更は書き込まれません。

Linuxでコマンド出力をファイルにリダイレクトする方法はすでにご存知でしょう。同じファイルにリダイレクトすることはできず、teeコマンドが常に機能するとは限らないこともご存知でしょう。

元のJSONファイルをきれいな印刷形式で変更する場合は、解析された出力を新しいファイルにパイプしてから、元のJSONファイルにコピーできます。

jq . sample.json > pretty.json

ボーナス:jqコマンドでJSONファイルを縮小する

逆のスタンスを取り、適切にフォーマットされたJSONファイルを縮小してみましょう。 JSONファイルを縮小するには、コンパクトオプション-cを使用できます。

jq -c < pretty.json

必要に応じて、猫とリダイレクトを使用することもできます:

cat pretty.json | jq -c

Pythonを使用してLinuxでJSONファイルをきれいに印刷する

システムにPythonがインストールされている可能性が高くなります。その場合は、ターミナルでJSONファイルをきれいに印刷するために使用できます:

python3 -m json.tool sample.json

JSONファイルを解析して適切な形式で印刷する方法は他にもあることを私は知っています。自分でそれらを探索することもできますが、JSONファイルをきれいに印刷するという仕事をするにはこれら2つで十分です。

元の記事


Linux
  1. Linuxファイル機能を管理する方法

  2. Linuxコマンドラインツールを使用してJSONを解析してきれいに印刷する方法

  3. Linuxコマンド出力をファイルに出力するには?

  1. Linuxでファイルを見つける方法

  2. Linuxでファイルの名前を変更するにはどうすればよいですか?

  3. ターミナルウィンドウからLinuxでファイルを作成するには?

  1. Linuxでファイルを移動する方法

  2. ターミナル/コマンドラインを使用してLinuxでファイルを作成する方法

  3. Linuxでファイルを作成する方法