ファイルを表示したい(bat)

$ bat ファイル名
$ bat ファイル名1 ファイル名2

batコマンドで、ファイルの内容を表示できます。 複数のファイルを一括して表示できます。

batはcatのRust代替コマンドです。

インストールしたい(bat)

$ brew install bat
$ bat --version
bat 0.26.1

batはHomebrewでインストールできます。

装飾なしにしたい(--plain / -p)

$ bat --plain ファイル名
$ bat --plain --plain ファイル名

// クリップボードにコピー
$ bat -pp ファイル名 | pbcopy

--plain(-p)で、行番号や罫線などの装飾なしでファイルの内容を表示できます。 コピペしたいときに便利です。 -pを2回指定(-pp)すると、ページャーも無効になります。

注釈

batは、デフォルトで装飾が付いており、読みやすいのが特徴です。 ただし、コピペするときには邪魔です。

行番号したい(--number / -n)

$ bat --number ファイル名
$ bat -n ファイル名

--number(-n)で、行番号だけを表示できます。 grepの結果と見比べて、該当行を探したいときに便利です。

行範囲したい(--line-range / -r)

$ bat --line-range 30:40 ファイル名
$ bat -r 30:40 ファイル名

--line-range(-r)で、指定した範囲の行だけを表示できます。 30:40で30〜40行目、:40で1〜40行目、40:で40行目から最後まで、40で40行目だけを表示できます。 ログファイルの一部分だけを確認したいときに便利です。

差分したい(--diff / -d)

$ bat --diff ファイル名
$ bat -d ファイル名
$ bat --diff-context 5 ファイル名

--diff(-d)で、Gitのインデックスと比較して変更のある行だけを表示できます。 --diff-contextオプションで、変更行の前後何行を含めるか指定できます。

不可視文字を表示したい(--show-all / -A)

$ bat --show-all ファイル名
$ bat -A ファイル名

--show-all(-A)で、タブや改行などの不可視文字を表示できます。 バイナリファイルの中身を確認したいときにも使えます。

特定の行をハイライトしたい(--highlight-line / -H)

$ bat --highlight-line 40 ファイル名
$ bat -H 30:40 ファイル名

--highlight-line(-H)で、指定した行の背景色を変えて目立たせることができます。 プレゼンテーションやコードレビューで、注目してほしい行を示したいときに便利です。

シンタックスを変更したい(--language)

$ bat --language cfg 設定ファイル
$ bat 設定ファイル --language cfg

シンタックスは、ファイルの拡張子から自動で判断してくれます。 拡張子がないファイルの場合は、--language 言語名で指定できます。

$ bat --list-languages

利用できる言語名は--list-languagesで確認できます。

シンタックスの配色を変更したい(--theme)

$ bat --theme ansi ファイル名
$ bat ファイル名 --theme ansi

--theme 配色名でファイルの内容の配色を変更できます。

$ bat --list-themes

利用できる配色は--list-themesで確認できます。

リファレンス