- 白黒ターミナルを利用する生活が多くなってきた無機質生活に、少々彩りを加えるために奔走する記事第五弾。
- 外観重視による、心身からの効率性の道を、とことん追求し続けた、ここ最近の日常。
- 今回は、内容の表示や連結の際に用いるcatコマンドを「装飾・更なる視覚化」をしてくれるbatコマンドを試用していくことにしよう。
概要
- Rust製の、ファイルの内容表示や連結が可能なコマンドツール。
- 同様のcatコマンドに比べて、「表示内容の色付け表示・ページング表示」等の、高機能さや便利さを備えている。
- 公式GitHub
- 公式日本語ドキュメント
特徴
ハイライト表示
- ファイル内容の言語に対応したシンタックスハイライトでの表示をしてくれる。
ページング表示
- catコマンドの全表示とは違い、標準で内容をlessコマンドに出力するため、読みやすいページング表示が可能。
ファイル連結
- catコマンド同様、出力や複数ファイルの内容を、連結することが可能。
作業環境
- Mac OS X 10.13.4
- Homebrew 2.1.4
インストール
Mac
- 下記のコマンドをうち、batの利用環境を構築する。
- ※Homebrew未導入の場合、こちらを参考にインストールする。
# brewでbatをインストール
$ brew install bat
Windows
- 下記のコマンドをうち、batの利用環境をchocolateyで構築する。
- ※Chocolatey未導入の場合、こちらを参考にインストールする。
$ choco install bat
Linux(Debian)
- 下記のコマンドをうち、batの利用環境をdpkgで導入する。
- 最新のバージョンのインストールの際には、こちらの一覧を確認
$ sudo dpkg -i bat_0.11.0_amd64.deb
その他環境
- 上記以外の環境でのインストール方法は、こちらの公式Githubのインストール欄を参考にする。
結果
- 下記、実際の画面。
- 複数ファイルの表示も可能。
- ファイル連結も可能。
- テーマ指定での表示も可能
基本操作
- batの基本操作コマンドとしては、下記。
内容 | コマンド |
---|---|
通常表示 | bat ファイル名 |
行数のみ表示 | bat -n ファイル名 |
不可視文字(空白文字等)の可視化 | bat -A ファイル名 |
内容のみの表示 | bat -p ファイル名 |
内容のみの表示、ページング無効化 | bat -pp ファイル名 |
指定範囲行での表示 |
bat -r3:7 ファイル名 ※1行目からの指定の際は、 bat -r:5 のように省略可能 |
対応言語リストの表示 | bat --list-languages |
言語の指定 | bat -l 言語 ファイル名 |
対応テーマの表示 | bat --list-themes |
指定テーマでの表示 | bat --theme テーマ名 ファイル名 |
ファイル連結 | bat ファイル名 ファイル名 > 結合ファイル名 |
バージョン確認 | bat -V |
ヘルプページ表示 | bat -h |
カスタマイズ設定
- batの各種設定をしていく場合は、下記で環境変数として設定する。
-
デフォルトでのテーマ設定は、
~/.bash_profile
等のファイルに、下記を記述する。export BAT_THEME="テーマ名"
-
デフォルトでのページャー設定は、
~/.bash_profile
等のファイルに、下記を記述する。export BAT_PAGER="less -RF"
-
まとめ
- 今回はファイルのハイライト表示ということで、装飾多用による色覚中毒に陥りながら、記事を書く。
- とうとうCLIにも、多彩性を当然のように求めてしまう現代エンジニア。
- 改造欲求は果てしなく続いてしまうと悟ったため、外観設定以外のも探してみることにしよう。
参考
-
https://github.com/sharkdp/bat
→公式GitHubです。大変お世話になりました。 -
https://github.com/sharkdp/bat/blob/master/doc/README-ja.md
→batの日本語ドキュメントです。大変お世話になりました。 -
https://co.bsnws.net/article/332
→こちらの記事を参考にしました。大変お世話になりました。