Bash
Bash (the Bourne-Again Shell) は最も広く使われていて、最も人気のある Linux ディストリビューションのデフォルトシェルとしてインストールされます。 これはオリジナルの UNIX ボーンシェル (別名 sh) から開発され、古いスクリプトと完全に互換性があるように設計されており、同時に複数の改良された機能を追加しています。
Bash は長い間使用されてきたため、非常に堅実なシェルオプションで、それに関する十分な文書があります。 実際、ほとんどのオンラインチュートリアルは bash を使っていることを前提にしています。
その結果、ほとんどのユーザーに推奨され、ほとんどの一般的なシステム管理タスクで素晴らしい働きをしてくれます。 しかし、より強力なスクリプト・オプションや他の高度なツールが必要な場合は、利用可能な新しいシェルのいくつかを探求する時期がやってきました。 ユニークなスクリプト機能を提供し、高度にカスタマイズ可能で、 スペルチェック、コマンド補完、ファイル名グロビングなど使い勝手がよいです。
CentOS へのインストールは非常に簡単で、1 つのコマンドで行えます:
yum install zsh
これで、zsh コマンドで新しいシェルを起動できます。プロンプトの見え方が少し変わったことに気づくでしょう:
その最も強力な機能を活用するには、使用前に zsh を設定しなければいけないことを覚えておいて下さい。 oh-my-zsh のようないくつかのオープンソースフレームワークは、さらに多くのカスタマイズオプションやプラグインを利用できます。
Korn
KornShell (ksh とも呼ばれる) は、1980年代に開発された非常に古い bash 代替品です。 bash に非常によく似ていますが、完全で強力なプログラミング言語でもあるので、シスアドの間では多くの熱狂的なファンがいます。
CentOSでは、インストールと起動がまた非常にシンプルです:
yum install ksh
Tcsh
Tcshは、UNIX時代に開発されたCシェル(csh)のより良いバージョンです。 その構文は C プログラミング言語に非常に似ているため、bash を学ぶことなくそのスクリプト機能を使用できることから、プログラマに好まれている。 また、BSD 系 OS のデフォルトシェルでもあります。
他にもジョブ制御、コマンドラインエディタ、設定可能なコマンドライン補完ツールなど、いくつかの便利な機能を備えています。 Tcsh は標準レポジトリから yum でインストールします。
Fish
Fish (friendly interactive shell) は、競合製品よりも使いやすく、よりユーザフレンドリであることを目標としています。 色を使ってユーザを助けるので、Linux の初心者に最適である。 たとえば、間違った構文のコマンドは赤で表示され、正しいものは青で表示されます。
さらに、Fish は非常に便利なオートコンプリートの提案を行い、新しくインストールしたパッケージのマニュアルページを解析して、それに基づいてコマンドの補完を提案します。
次のコマンドを実行して、CentOS7 に Fish をインストールします:
cd /etc/yum.repos.d/wget http://download.opensuse.org/repositories/shells:fish:release:3/RHEL_7/shells:fish:release:3.repoyum install fish
これで、新しいシェルを起動できました:
どのシェルがベストでしょうか? それは、実際の使用ケースによります。 Bash は素晴らしい万能選手で、ドキュメントも充実していますし、Zsh はその上にいくつかの機能を追加してさらに良くしています。 Fishは初心者に素晴らしく、コマンドラインを学ぶのに役立ちます。 Ksh と Tcsh は、より強力なスクリプト機能を必要とする上級ユーザーに適しています。
著者について
Dragos Baldescu は Bigstep の Level 2 Technical Support Engineer で、Linux と新しいテクノロジーとソリューションのテストに情熱を傾けています。