トップ «前の日記(2020-01-31) 最新 次の日記(2020-03-01)» 編集

2020-02-26 [長年日記]

_ jqでJSONのrecordもfieldもsortする

やりたいこと

record の順番も field の順番もバラバラな JSON があるんだけど、この JSON 同士を比較してどこに差があるのかを知りたい。

方法

毎度おなじみ jq を使う。

  • --sort-keys オプションを使うと field の方を sort できる
  • 'sort()' あるいは 'sort_by()' という function で record を sort できる

ということでまとめると

jq --sort_by('.<key>') --sort-keys <file>

と叩くと JSON の record と field 両方が sort できるので、sort 済みの JSON 同士を比較すれば human readable な diff を生成できるようになります。

Tags: JSON