jq
あまりにも有名。
整形して色付きで出力、フィルタで絞り込む、一行出力、etc...
とりあえず小規模なJSONをザックリ見るときは jq
にパイプラインで投げる。
AWS CLIのお供( --query
オプション覚えるの面倒くさい人です、すみません)。
https://github.com/stedolan/jq
jid
jq
のフィルタの書き方を中々覚えられない人向け。
インタラクティブにJSONを絞り込んでいけるのでオススメ。
そもそも jq
のフィルタの書き方を知っていても、肝心のキー自体を知らないと絞り込むのが面倒なので、形式をよく知らないJSONに関しては jid
で絞り込んだほうが楽だったりする。
Tabキーを押せば候補が出てくるのでそこそこ何とかなる。
gron
多分 greppable JSON で gron
。
JSONをキーとバリューが1行で表示されるように加工してくれるので、 grep
が可能になる。
$ gron "https://api.github.com/repos/tomnomnom/gron/commits?per_page=1" | fgrep "commit.author"
json[0].commit.author = {};
json[0].commit.author.date = "2016-07-02T10:51:21Z";
json[0].commit.author.email = "[email protected]";
json[0].commit.author.name = "Tom Hudson";
fzf
と組み合わせると効果的。
gron -u
で元の形式に戻せるので | gron | fzf | gron -u
とパイプを繋げばJSON内をあいまい検索できる。
エイリアスを貼っておくと吉。
JSONの形式のままの方が見やすい場合は大人しく jid
を使う。
https://github.com/tomnomnom/gron
fzf
JSON操作とは直接関係ないけど gron
内で言及したので紹介。
あいまい検索できる。
似たようなところだと peco
とか fzy
とか。
インタラクティブなコマンドを自作するときのお供。