概要
JSON からほしいデータを取り出すときに便利なツールとして
jq がある
jq
のソースコードは github にある
このツールは非常に便利なので、いろいろな場面で、
jq みたいなツールがあったらなぁ
と、おもうのだが、実は結構そういうツールは存在していることがわかったので、知っているものを集めてみた。
YAML/YML
yq
- kislyuk/yq: Command-line YAML and XML processor - jq wrapper for YAML/XML documents
- mikefarah/yq: yq is a portable command-line YAML processor
(追記:2021-01-20編集リクエストでおしえていただきました>mikefarha/yq。まったく記事とは関係ないですが、編集リクエストの採用がうまくできなかった。。。ので編集して採用みたいなのをしてみました。)
HTML
HTML用のツールは、q
でおわらないけどあった。
XML
XMLは、xq
csvや標準入力をsqlで取得できるqコマンド
(追記2018年5月31日:コメント欄で紹介していただきました。ありがとうございます。)
CSVファイルをSQLの構文で扱えるツール
(追記2018年5月31日:コメント欄で紹介していただきました。ありがとうございます。)
コンソール上で統計情報を計算する「st」コマンド
(追記2018年5月31日)
各OS等での対応状況
ツール名 | Mac Homebrew |
---|---|
jq | |
q | |
yq | OK (2019-04-17) |
xq | NG (2019-04-17) |
textql |
感想
*q
というツールは結構あるかもしれない。
そのほかのツールを探してみるときはたとえば、以下のような検索をしてみるとよいかもしれない。
partiql
(追記2018年8月7日)
ちょっと jq とは違うが、SQLのような表現で、検索ができるツール
SQL-compatible access to relational, semi-structured, and nested data.
jtc
(追記2018年10月15日)
jtc offers a powerful way to select one or multiple elements from a source JSON and apply various actions on the selected elements at once (wrap selected elements into a new JSON, filter in/out, update elements, insert new elements, remove, copy, move, compare, transform and swap around).