LoginSignup
2
1

More than 5 years have passed since last update.

jq コマンドの出力結果を色つきで less に表示するrubyスクリプト

Posted at

発端

小ネタ。
jq の結果を色つきlessで表示したいなーと思って検索したら
http://qiita.com/hawaku/items/973eaf4261199c2dcc89
にあったので、使ってみた。

cat hoge.json | jq '.' -C | less -R

こりゃいいや、と思ったんだけど、ふと以下のように感じた

  • いちいち書くと長いから簡略化したい
  • ファイル名やフィルターの文字列は、コマンドの引数としたい

改善:コマンドっぽく使えるようにしてみたい

ということで

colored_jq_less.rb
file   = ARGV[0]
filter = ARGV[1] || "."
system("cat " + file + "|jq " + filter + " -C|less")

これを ~/.script/というフォルダを作って、そこに置いた。
また、自分は ~/.zsh_aliases というファイルにエイリアスを書いているので、そこに下記のように記述。

alias jqless='ruby ~/.script/colored_jq_less.rb'

結果

$jqless sample.json .filter.chain

とかで使えるようになった。満足。

2
1
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
1