jqコマンドでJSONをJSONL(JSON Lines)に変換する

json便利だけど、ちょろっと見るときには1レコード1行で見たいと思ったので JSONLに変換する方法を調べて見ました。
(と言っても、stackoverflow ですぐ見つかった)

やり方

こんなやつを

$ cat japanese_banks.json
[
  {
    "class1": "中央銀行",
    "class2": null,
    "class3": null,
    "class4": null,
    "code": "0000",
    "name": "日本銀行",
    "abbr": null,
    "note": null
  },
  {
    "class1": "普通銀行",
    "class2": "都市銀行",
    "class3": null,
    "class4": null,
    "code": "0001",
    "name": "みずほ銀行",
    "abbr": "MHBK",
    "note": null
  },
...

これで変換します。

$ jq -c '.[]' japanese_banks.json
{"class1":"中央銀行","class2":null,"class3":null,"class4":null,"code":"0000","name":"日本銀行","abbr":null,"note":null}
{"class1":"普通銀行","class2":"都市銀行","class3":null,"class4":null,"code":"0001","name":"みずほ銀行","abbr":"MHBK","note":null}
{"class1":"普通銀行","class2":"都市銀行","class3":null,"class4":null,"code":"0005","name":"三菱東京UFJ銀行","abbr":"BTMU","note":null}
{"class1":"普通銀行","class2":"都市銀行","class3":null,"class4":null,"code":"0009","name":"三井住友銀行","abbr":"SMBC","note":null}
{"class1":"普通銀行","class2":"都市銀行","class3":null,"class4":null,"code":"0010","name":"りそな銀行","abbr":null,"note":null}
{"class1":"普通銀行","class2":"都市銀行","class3":null,"class4":null,"code":"0017","name":"埼玉りそな銀行","abbr":null,"note":null}

header付きCSVをJSONに変換する

銀行コードが付与された一覧を作りたかったのでwikiからnumbersで一覧にして、CSVにexportしたのちjsonに変換しました。

日本の銀行一覧 - Wikipedia

Convert from CSV to JSON

require 'csv'
require 'json'

body = File.open("japanese_banks.csv").read
csv = CSV.new(body, headers: true, header_converters: :symbol, force_quotes: true)
rows = csv.to_a.map { |row| row.to_hash }
File.open("japanese_banks.json", "w") { |f| f.write rows.to_json }

結果

Japanese Banks · GitHub

参考

CSV to JSON Ruby Script? - Stack Overflow

メモ:極めろ!!Google Chrome Devtools 52の関節技

極めろ!!Google Chrome Devtools 52の関節技 - Qiita
こういうの好きなのでついつい見てしまいます。

結構知らないのがあり、勉強になりました。

30.リソース依存関係を表示
①shiftを押しながらリソース名をhoverする


33.各リソースを読み込みにかかった時間順に並び替え
①列見出し上で右クリック
②WaterfallのTotal Durationをクリック


35.ファイルサイズを指定してフィルタリング
①Filterボタンをクリック
②表示されてテキストボックスにlarger-than:10kと入力


44.フルスクリーンショットをとる
①cmd + shift + pで入力フォームを表示
②Capture fullと入力


45.コンポーネントのキャプチャーをとる
①DOM要素を選択
②cmd + shift + pで入力フォームを表示
③Capture nodeと入力

See Also

Chrome Devloper Tools の便利機能 - rochefort's blog