Bash
Bashセッションのスクリーンショット
作者ブライアン・フォックス
Bash(バッシュ)はUnixシェルかつコマンド言語(英語版)であり、GNUプロジェクトにおけるBourne Shellのフリーソフトウェアによる代替としてブライアン・フォックス(英語版)によって作成された[7][8]。Bashは1989年に初めてリリースされ[9]、ほとんどのLinuxディストリビューションのデフォルトのログインシェルとして広く普及している。Windows 10におけるWindows Subsystem for Linuxでも利用可能である[10]。
Bashはコマンドプロセッサであり、通常はアクションを発生させるコマンドをユーザーがタイプするテキストウィンドウで起動する。Bashはスクリプトと呼ばれるファイルからコマンドを読み込んで実行することも可能である。Bashはそれ以外の全てのUnixシェルと同様に、ファイル名のグロブ(ワイルドカードによるマッチング)、パイプ、ヒアドキュメント、コマンド置換(英語版)、変数、そして条件テストや反復(英語版)のための制御構造をサポートする。Bashの予約語や構文などの言語の基本的要素は全てBourne shellからコピーされており、ヒストリなどBourne shell以外の機能はC ShellやKornShellからコピーされている。BashはPOSIX準拠のシェルであるが、数多くの拡張がされている。
Bashという名前は .mw-parser-output ruby.large{font-size:250%}.mw-parser-output ruby.large>rt,.mw-parser-output ruby.large>rtc{font-size:.3em}.mw-parser-output ruby>rt,.mw-parser-output ruby>rtc{font-feature-settings:"ruby"1}.mw-parser-output ruby.yomigana>rt{font-feature-settings:"ruby"0}Bourne-again shell(ボーン・アゲイン・シェル) の頭字語であり、Bashの置換対象であるBourne Shell[11]と、現代アメリカのキリスト教において精神的な再生を意味する born again(ボーン・アゲイン)(新生)に引っ掛けた駄洒落である[12][13][14][15]。 ブライアン・フォックスは1988年1月10日にBashのコーディングを開始した[16]が、これは彼の前任開発者に進歩が見られなかったことにリチャード・ストールマンが不満を抱くようになってからのことである[7]。ストールマンとフリーソフトウェア財団 (FSF) は、BSDやGNUのコードからビルドされた完全にフリーなシステムにとって既存のシェルスクリプトを実行できるフリーなシェルは戦略上非常に重要であると考えていたため、Bashは彼らが自ら創設した数少ないプロジェクトのうちの1つとなり、フォックスはFSFの従業員としてその作業を引き受けた[7][17]。フォックスは1989年6月8日にBashのベータ版であるバージョン.99をリリースし[9]、1992年中頃[18]から彼がFSFから去る[19]1994年中頃[20]の間のある期間まで主要なメンテナであった。フォックスが去った後、彼の責務はもう一人の初期貢献者であるChet Rameyへと移された[21][22][23]。 それ以降BashはLinuxユーザーの間で最も有名なシェルとなり、様々なLinuxディストリビューションのデフォルトインタラクティブシェルとなっている[24][25][26](ただしデフォルトのスクリプトシェルがAlmquist ShellであるLinuxディストリビューションもある)。
歴史