jqとfzfで雑にJSONを探索する

tl;dr

タイトルにあるとおりだが jq と fzf で JSON を探索する Shell Script を書いた。
具体的にはある JSON ファイルを渡したら JSON Path が一覧され、fzf を使って JSON Path をインタラクティブに絞り込みながら値を preview するというもの。
百聞は一見にしかずというので gif を貼っておく。

動作している様子

背景

同僚が「フィールド名はわかっているけどわざわざ JSON Path を指定するのが面倒」という事を言っていたのでなんか簡単に JSON Path の抽出/絞り込みできないかなと思った。

本体

gist.github.com

使い方

自分は .zshrc に貼ってあるので適当に shell を開いて jpath <JSON file> のようにして使う。

おわり

ちなみに同僚が本当に求めていたものは jq '.. | .<field name>? | values' で十分だった。

引用: https://pmac-agpc.ca/project-management-tree-swing-story