【バット】

bat(catの高機能版) とは?

💡 catに翼を生やした、カラフルなファイルビューア
📌 このページのポイント
bat — シンタックスハイライト付き cat cat main.py import os def main(): path = os.getcwd() print(f"Dir: ...") main() bat main.py 1 import os 2 def main (): 3 path = os.getcwd() 4 print (f"Dir:...") 5 main () 200+ 言語対応 Git差分マーク表示 ページャー内蔵 cat の上位互換として使える CLI ツール alias cat=bat で置き換え可能
bat のシンタックスハイライトのイメージ
ひよこ ひよこ

catでファイルを見ると真っ白で読みにくいんだけど…

ペンギン先生 ペンギン先生

batを使えばシンタックスハイライトが自動で付くよ。JSONYAMLPythonも、言語を自動判定してカラフルに表示してくれるんだ

ひよこ ひよこ

行番号も出るの?

ペンギン先生 ペンギン先生

行番号に加えて、Gitで変更された行には左端にマークが付くんだ。どこを変えたか一目瞭然だよ

ひよこ ひよこ

パイプでも使えるの?

ペンギン先生 ペンギン先生

`curl ... | bat -l json`みたいにパイプで受け取った内容にもハイライトを適用できるよ。APIのレスポンスを見る時にとても便利なんだ

ひよこ ひよこ

catの代わりに完全に置き換えられる?

ペンギン先生 ペンギン先生

aliascat=batに設定してる人も多いよ。パイプに流す時はプレーン出力に自動切り替えされるから、スクリプトの中でも問題なく使えるんだ

ひよこ ひよこ

テーマは変えられる?

ペンギン先生 ペンギン先生

`bat --list-themes`で使えるテーマが見えるよ。Dracula、Monokai、Nord、GitHub系など豊富に揃ってるんだ。ターミナルの配色に合わせて選ぶといいよ

ペンギン
まとめ:ざっくりこれだけ覚えればOK!
「bat」って出てきたら「シンタックスハイライト付きのcatコマンド」と思えればだいたいOK!
📖 おまけ:英語の意味
「bat」 = コウモリ
💬 catのもじりでbat(コウモリ)。catに翼を生やして進化させた、というジョークが込められてるよ
← 用語集にもどる