jqコマンドをMacで使う

JSON形式(JSON,JSONL)からCSV形式への変換をたまに必要とします。

jqコマンドの備忘録です。

jqとは

  • JSON プロセッサーツールです。
  • JSON を整形したり検索したりすることができます。

jqのインストール

MacではHomebrewを使います。

brew コマンドでjqをインストールします。

$ brew install jq

以下のコマンドでバージョン確認します。

$ jq --version

使い方

JSON形式からJSONL形式に変換

jq -c '.[]' input.json > output.jsonl

JSONL形式からJSON形式に変換

jq -s '.' input.jsonl > output.json

JSON形式からCSV形式に変換

cat output.json | jq -r '.[] | [.col1, .col2, .col3, .col4, .col5, .col6, .col7]|@csv' > json_to_csv.csv

JSON形式からCSV(ヘッダー付き)形式に変換

cat output.json | jq -r '(map(keys) | add | unique) as $cols | map(. as $row | $cols | map($row[.])) as $rows | $cols, $rows[] | @csv'  > json_to_csv_header.csv

参考

とほほのjq入門 – とほほのWWW入門 Mac に jq コマンドのインストール jqをMacに入れるためだけに毎回四苦八苦するおまえへ – Qiita

コメントを残す

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

CAPTCHA