ちなみに

火曜日の空は僕を押しつぶした。

TSVファイルをCLIでテーブル表示する

なんかあるやろと思ったら macOS にも標準で入っている column コマンドで十分だった。 miller とかを眺めていたが高機能すぎて持て余したのでこれで良かった。

これが、

$ cat service.tsv
Twitter X
G Suite Google Workspace
Office 365 Microsoft 365
HipChat Stride

こうなる。

$ cat service.tsv | column -t -s $'\t'
Twitter     X
G Suite     Google Workspace
Office 365  Microsoft 365
HipChat     Stride

ポイントは $'\t でまったく知らなかったのだけれど対応しているシェルだと $'<エスケープシーケンス>' と書くとエスケープシーケンスを解釈した結果に置き換えてくれるらしい。(see also)


最終的にやりたかったのは gh の結果をシュッとテーブル形式で表示するので以下のような感じで扱えて見栄えがよくなった。(スクショ参照)

$ gh pr list --json 'number,author,title,headRefName' -q '.[] | [ "#" + (.number | tostring), "@" + .author.login, .title, .headRefName] | @tsv' | column -t -s $'\t'

ちなみにこれだとデフォルトの表示の方が綺麗なのであくまでサンプルです。