プログラミングの勉強をし始め、アドオンやフレームワークのインストールでさらなるステップアップ、と思った矢先、シェルを使わなくてはならなくなった。よくある話ですが、実際シェルとはなんなのでしょうか?
シェルとは
シェルとはユーザーが打ち込んだコマンドをOSに伝えてくれる役割を持ったプログラムのことです。OSの内部とユーザーの間にある外殻のようなものとして付けられたのが由来だそうです。
シェルの種類
シェルと一言にいっても実はいろいろな種類があります。
Unixシェルはケン・トンプソンが開発したThompson Shellというものが最初に誕生したシェルと言われていますが、今回は今使われているシェルをいくつか紹介していきます。
もっとも標準的で多くのディストリビューションで使用されているのはbashでしょう。linuxシェルとして有名です。ほかにも同じくBourne シェル系のsh, ksh, zsh、 Cシェル系のcsh, tcshがあります。
もっともスタンダードなシェル"bash"
UNIX上の昔からある一番古いシェルであるshというのがありますがそのshにいろいろ拡張機能を足したのがbashです。Linux標準シェルとなります。一番スタンダードなシェルといえるでしょう。
C使いには嬉しい"tcsh"
次に代表的になってくるのがCシェル系のtcshでしょう。C言語に構文が似ているのでC言語を勉強された方なら比較的導入しやすいでしょう。これもcshというシェルにいろいろ拡張機能を足したものになります。
万能系シェル"zsh"
Cシェル系とBourne シェル系のいいところを足したシェルと考えていただければいいでしょう。基本的にはBourneシェルなのですが、Cシェル系の構文も対応します。機能性では1番なのではないでしょうか?
結局どれを使ったらいいのか
元も子もないですが、結局は好みです。ただbash, zsh, tcsh から選ぶのが普通でしょう。よほどC言語に親しみがあればtcshを選ぶのが正解といえるでしょうが、とりあえずはbashがデフォルトで入っている場合が大多数なのでbashから入っておくのが間違いないでしょう。その方が余計な手間がありませんし、最初のうちで大体のことはこれでことたりるでしょう。
いかがでしたでしょうか、ここではシェルについての本当に触りだけですが紹介いたしました。これをきっかけに実際に使ってみてその便利さを体験することをお勧めします。シェルを知ることはコンピューター、OSを知ることでもあります。難しい部分もあるかもしれませんが、まずは触れてみることをオススメします。