Linuxでは、catコマンドに精通している必要があります。これは、ファイルを印刷および連結するためによく使用されます。 Batコマンドは、多くの魅力的で便利な機能を備えたcatコマンドのクローンです。一部の機能には、構文の強調表示、自動ページング、git統合などがあり、プログラマーのエクスペリエンスも向上します。
batコマンドの機能の一部を以下に示します。
- Git統合: batはgitと通信して、変更を表示します。
- 構文の強調表示: batは、多数のプログラミング言語とマークアップ言語の構文の強調表示をサポートしています。
- 自動ページング: batは、出力が1つの画面に対して大きすぎる場合に備えて、自身の出力をより少ない値にパイプすることができます。
- コマンドラインインターフェイスは非常にユーザーフレンドリーです。
この記事では、batコマンドの使用法と機能をインストールして示します。ここでは、Ubuntu20.04LTSサーバーにインストールします。
Ubuntuへのbatコマンドのインストール
Batパッケージは、次のコマンドを使用してパッケージマネージャーからインストールできます。
$ sudo apt install bat
ただし、任意のバージョンのbatパッケージをインストールできるため、batパッケージが最新のものであることを確認するために、Githubリリースページからダウンロードしています。ページを検索するか、以下に示すように次のコマンドを実行するだけです。
$ wget https://github.com/sharkdp/bat/releases/download/v0.18.3/bat-musl_0.18.3_amd64.deb $ sudo dpkg -i bat-musl_0.18.3_amd64.deb
Linuxでのbatコマンドのユースケース
batパッケージのインストールが完了したら、batコマンドで簡単に使用できます。いくつかの例を以下に示します。
単一ファイルの内容を表示するには
$ bat filename
例:
$ bat test.txt
出力:
複数のファイルの内容を一度に表示するには
$ bat <file1> <file2>
例:
$ bat /etc/hosts test.txt
出力:
サポートされているすべての言語を表示するには
$ bat --list-languages
1つのファイルにさまざまなファイルの内容を追加するには
$ bat file1 file2 > singlefile
例:
$ bat test.txt app.txt > document.txt
出力:
新しいファイルを作成するには
$ bat > filename
例:
$ bat > hello.txt
「–line-range」スイッチを使用して特定の範囲の行を印刷するには
$ bat --line-range range_from:range_to filename
例:
$ bat --line-range 2:4 /etc/hosts
出力:
「-n」フラグを使用して行番号を確認するには
$ bat -n filename
例
$ bat -n zigzag.py
出力:
構文を強調表示するための言語を設定するには
$ bat filename
例:
$ bat zigzag.py
出力:
batコマンドのテーマで構文の強調表示を確認するには
$ bat --list-themes
出力:
構文の強調表示のためにbatコマンドのテーマを変更するには
$ bat --theme=ansi filename
例:
$ bat --theme=ansi zigzag.py
出力:
これらのテーマの変更を永続的にするには、ユーザー固有の場合は〜/ .bashrcに、システム全体の場合は/etc/bash.bashrcに「exportBAT_THEME =”ansi」と記述します。
結論
Batは、上記の例に示すように多くの機能を備えたcatコマンドのクローンです。好みに応じて、他のテーマも試してみることができます。詳細については、「manbat」を使用してbatコマンドを調べてください。ありがとうございます。