JSONやSQLの整形をターミナルで超簡単にできるようにする
ログに出力された改行なしのJSON文字列やSQLを整形して見たいときありますよね。
私は今までこのようなコマンドを実行していたのですが、
$ echo '{"name":"igarashi","div":"CX"}' | jq { "name": "igarashi", "div": "CX" }
$ echo 'SELECT * FROM table;' | npx sql-formatter-cli SELECT * FROM table;
ちょっと設定をするだけでこの様に実行できるようになりました。
$ jsonf '{"name":"igarashi","div":"CX"}' { "name": "igarashi", "div": "CX" }
$ sqlf 'SELECT * FROM table;' SELECT * FROM table;
これなら整形したい文字列を一番最後に入力するだけでいいので楽ですね。
設定
fish
fish shellで引数を取りたいときは関数を使います。
config.fish
function jsonf echo $argv | jq end function sqlf echo $argv | npx sql-formatter-cli end
zsh
zshは無名関数が使えるのでaliasで記述することができます。(と @janus_wel さんに教えてもらいました)
.zshrc
alias jsonf='(){echo $1 | jq}' alias sqlf='(){echo $1 | npx sql-formatter-cli}'
まとめ
よく使うコマンドは短いコマンドにして楽しましょう。