jq
jsonデータを良い感じに整形してCLIで表示してくれるやつ
こういうフォーマット
$ jq '<ここにjq用のコード>'
jq内でパイプができる
$ jq '<jq用のコード1> | <jq用のコード2> | <jq用のコード3>'
いろいろ
unique
jqのreduce関数
reduce "元データ" as "アキュムレータ" ("出力形式"; . + "出力フォーマット")
出力フォーマットの前の+は、結合を意味するだけで、必ずしもreduceとセットのformatという意味ではない
例
reduce .[] as $item({}; . + {($item.id) : $item.data} )
filterっぽいこと
mapとselectで頑張るなど
map(select(.hoge != null))
これどうやってpipeにするん?
なんかの処理 | reduceとしたい
配列系
add
連結する
2つのファイルのjsonをmergeすることもできる ref $ jq -s add hoge.json fuga.json
関連
jq ispiredなツールたち
xml、yamlを整形する、など
書籍がある
参考
良い感じの整形の仕方参考