この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。
ログに出力された改行なしの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}'
まとめ
よく使うコマンドは短いコマンドにして楽しましょう。