SHELL

◆Bourneシェル系
 ┣sh
 ┣ksh
 ┣bash
 ┗zsh

◆Cシェル系
 ┣csh
 ┣tcsh
 ┗zsh(一部)

○sh = bourne SHell, posix SHell
 POSIX(IEEE Std1003.2) で標準化された標準のシェル。
 対話機能が貧弱。
 ログインシェルとして使用されることは少なく、主にスクリプトとして使用される。
 FreeBSDでは、機能強化したashが使用されている。

○ksh = Korn SHell
 bourne SHellを基に機能拡張したシェル。
 ヒストリ機能やコマンドライン編集機能が追加されている。
 System V 系では標準、パブリックドメインのpdkshもある

○bash = Bourne Again SHell
 bourne SHellを基に機能拡張したシェル。
 コマンドラインでの編集機能が充実。
 GNUのソフトとして配布されている。(特にLinux)

○zsh = Z SHell
 bourne SHellの構文を基本とし、C SHellの構文もサポートしている最強?のシェル。
 ksh,bashのほとんどの機能とプログラマブル補完機能や独自のファイル名展開機能がある。

○csh = C SHell
 BSD UNIXで採用されたシェル。
 C言語風の構文でヒストリ機能やエイリアス機能が初めて導入されたシェル。
 スクリプト言語としてはbourne SHellより劣っている。
 デフォルトのログインシェルとして設定されているシステムが多かった。

○tcsh = Tenex C SHell
 cshを基に機能拡張したシェル。
 コマンドラインでの編集機能と強力なプログラマブル補完機能がある。
 エラーメッセージとして日本語カタログがある。

sh  ksh(pkdsh)  bash  bash 2.0  zsh  csh  tcsh  
バージョン  (OS付属)  5.2.13  1.14.7  2.02.1  3.0.5  (OS付属)  6.08.03  
エイリアス  ○  ○  ○  ○  ○  ○1)  ○1)  
関数  ○  ○  ○  ○  ○  ×1)  ×1)  
構造化スクリプト  ○  ○  ○  ○  ○  △  △  
配列  ×  ○  ×  ○  ○  ○  ○  
キーバインド  ×  ○  ○  ○  ○  ×  ○  
ヒストリ編集  ×  ○  ○  ○  ○  ×  ○  
ライン編集  ×  ○  ○  ○  ○  ×  ○  
補完  ×  △  ○  ○  ◎2,3)  △  ◎2,4)  
ファイル名展開  △  ○  ○  ○  ◎5)  ○  ○6)  
プロンプトカスタマイズ  ×  ×  ○  ○  ○  ×  ○  
NLSカタログ(日本語化)  ×7)  ×7)  ×  ×  ×  ×7)  ◎  

1) csh, tcsh は関数が無いかわりエイリアスが引数をとれる
2) zsh, tcsh は強力なプログラマブル補完機能がある
3) zsh はメニュー補完機能がある
4) tcsh は補完候補の一覧が GNU-ls のようにカラー化できる
5) zsh は階層化したディレクトリに一致する `**' などある
6) tcsh は「それ以外」に一致する `^' がある
7) 商用 UNIX では対応しているものもある□■□■□■□■□■□■□■□■□■□■□■□■□■□■□■□■□■□■
最終更新:2008年02月18日 16:08