BashとZshの概要
-
Bash
BashはUNIX系オペレーティングシステムで使用されるコマンドラインシェルの一つで、GNUプロジェクトによって開発されました。Bashは、Bourne Shellのフリーソフトウェア版として機能を継承しつつ、C ShellやKornShellの機能を取り入れた高機能なシェルです。 -
Zsh
ZshはUNIX系オペレーティングシステムで使用される強力なコマンドラインシェルの一つで、Bourne Shellやbash、ksh、tcshの便利な機能を取り込んでいます。Zshは特に強力な入力補完機能やカスタマイズ性の高さで知られており、macOS Catalina以降ではデフォルトのシェルとして採用されています。
Zshの設定ファイル
Zshの動作をカスタマイズするために以下の設定ファイルが使用されます。
- .zshenv
Zshが起動した際に必ず読み込まれます。ここでは主に環境変数などの、操作に関係のない設定を記述します。 - .zprofile
ログインシェルの場合に1度だけ読み込まれます。つまりインタラクティブシェルやシェルスクリプトでは不要だけどログインシェルの時だけ必要な設定をする場合にはここに記述します。 - .zshrc
Zshのインタラクティブシェル(ユーザーがコマンドを入力する画面)が起動した際に読み込まれます。このファイルには主にZshの操作に関する設定を記述します。 - .zlogin
ログインシェルの場合だけ読み込まれます。zprofileと一緒なのだが、重要なのはzshrcの後に読み込まれるということです。 - .zlogout
シェルからexitする前に読み込まれます。最後に定型的な処理をさせたい場合にはここに記述します。
BashとZshの違い
BashとZshは、Unix系のコマンドラインインターフェースで、ユーザーがコンピューターと対話するためのシェルです。Bashはシェルの基本的な機能を網羅しており、多くの場合、標準仕様で利用されます。一方、ZshはBashよりも高度な機能を持つシェルでBashの上位互換という位置付けです。Zshはより進んだタブ補完機能や、コマンドのスペルチェック、テーマやプラグインによるカスタマイズが可能です。
エイリアスでショートカットコマンドを作成する
コマンドのショートカットを作成するには、.zshrcや.bashrcなどの設定ファイルなどにエイリアスを設定します。
alias 新しいコマンド='元のコマンド'
これにより、新しいコマンドと入力するだけで元のコマンドが実行されるようになります。
また、エイリアスは単に新しい名前を提供するだけなので、元のコマンドはそのまま使えます。