JSON形式のファイルを整形・集計したりするjqコマンドのインストールと使い方

JSON形式のファイルを整形・集計したりするjqコマンドのインストールと使い方

JSON形式のファイルをCSV形式に変換したり、整形・集計など色々加工したい場合にjqをいれておくと便利です。

インストールはこちらです。OSにおわせてダウンロードします。Windowsの場合はexeをダウンロードし、パスを通すだけです。以下に配置しパスを通します。

ファイルに対して|(パイプ)でjqコマンドを使います。

バージョンは-Vオプションです。

以下のJSONファイルがあります。

ドットがルートと考えます。

ドットにキーを付けてvalueを取得します。

ドットにキーを付けてさらにドットにキーを付けてvalueを取得します。

色々公式サイトを見ながら試すと集計したり加工したりすることができるようです。

基本的にはkeyに対してvalueを表示する、という感じです。keyはダブルクォーテーションで囲みます。

ダブルクォーテーションを消したい場合は-rオプションを使います。

JSONの配列を操作する

JSONの配列を操作してみます。以下のsample.jsonというファイルがあるとします。

配列を表示する

配列の添え字を省略すると全要素が表示されます。

基底値は0なので、この辺はJavaなどと同じく[0]とすればその要素が取得できます。

範囲外の要素を指定すると、nullとなるようです。

addで集計する

あるvalueの集計をしたい場合にaddを使います。

このpriceの合計を求める場合にaddを使用します。一旦[]で囲って、配列にしてからaddします。

lengthで配列長を求める

lengthから配列長を求めることができます。

maxで最大値を求める

maxから最大値を求めることができます。

minで最小値を求める

minから最小値を求めることができます。

JSONの任意のプロパティを削除する

delを使えば、深い階層のプロパティを削除したりすることができます。

キーが特定できない場合は[]とすることによって、その階層のキーを任意とすることができます。

JSONファイルを文字列にする(Linux)

JSONファイルの整形をやめて1行の文字列に変換するには-cオプションを使用します。

これを文字列に変換するにはパイプでjq -Rコマンドでつなぎます。

スポンサーリンク
  • このエントリーをはてなブックマークに追加
  • Evernoteに保存Evernoteに保存
スポンサーリンク

コメントをどうぞ

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

CAPTCHA