JSONやSQLの整形をターミナルで超簡単にできるようにする

JSONやSQLの整形をターミナルで超簡単にできるようにする

2019.12.16

この記事は公開されてから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}'

		

まとめ

よく使うコマンドは短いコマンドにして楽しましょう。

この記事をシェアする

FacebookHatena blogX

関連記事