Bash は、Linux ディストリビューションにログインしているユーザーを迎えるコマンドライン インターフェイスの奇妙な名前のように聞こえます。バッシュとは正確には何ですか?何に使えますか?確認してみましょう。

Bash は通常 Linux に関連付けられていますが、Windows でも使用できます。 macOS にはすでに Bash が含まれていますが、デフォルトのシェルが Zsh に変更されています。これは、いくつかの追加機能を備えた Bash の高度なバージョンです。

目次

シェルとは?

Bash シェルという用語はよく使われますが、そもそもシェルとは何でしょうか?なぜそれが必要なのですか?また、Bash が唯一のシェルのように見えるのはなぜですか?

直感的なグラフィカル ユーザー インターフェイスを備えた最新のオペレーティング システムにより、コンピューターの使用は簡単に思えます。しかし、コンピューターの黎明期には、システムに何をすべきかを指示することはそれほど簡単ではありませんでした。

プログラマーは、コーディング対象のシステムの低レベルの詳細を把握し、ハードウェアのすべての部分に手動で指示する必要がありました。オペレーティング システムはこのギャップを埋めるように設計されていますが、OS 自体にどのように指示しますか?

シェルに入ります。 OS の最外層は、コンピューターのすべての機能をシンプルなインターフェイスで公開するインタラクティブな環境になるように設計されています。このシェルは、システムを操作するために必要なすべてのコマンドが含まれていたため、コンピューターのユーザーが最も深く掘り下げる必要がありました。

Bourne Again: Bash の成り立ち

よくある誤解は、Bash が Linux オペレーティング システム用に Linus Torvalds によって作成されたというものです。実際には、Bash は単に Linux に移植されただけで、その前身である Unix ではすでに使用されていました。

多くの点で、Unix は最新のオペレーティング システムのすべての始まりです。初期の OS 実装を悩ませていた入り組んだ複雑さの多くを取り除き、比較的単純なテキストベースのインターフェイスでコンピューターの機能を提示しました。

もちろん、Unix 自体は、シェルの概念を含め、そのアイデアのほとんどを Multics から借用しました。しかし、この手法を実際に普及させたのは Unix であり、Thompson Shell の最初のバージョンが公開されました。

しかし、その機能はかなり制限されており、多くのプログラマーはシェルを変更して、スクリプトをより使いやすくしました。 Bourne Shell は Unix シェルの正式な代替品であり、シェル スクリプトのサポートが追加されました。

Bourne Again Shell はずっと後にリリースされ、スクリプト機能がさらに改善され、任意の OS で使用できる無料のオープンソース GNU ライセンス シェルになりました。そして、すぐに Linux に採用され、さまざまなディストリビューションのデフォルト シェルになりました。

では、Bash で何ができるのでしょうか?

Bash は基本的に、Linux システムに完全にアクセスできる完全なスクリプト環境です。ファイルの管理からアプリケーションの実行まで、すべてのコンピューティング タスクを Bash コマンドで実行できます。

ほとんどの Linux ユーザーにとって、これは手動のシェル コマンドにのみ変換されます。結局のところ、Bash の主な目的は、オペレーティング システムへのインターフェイスとして機能することです。

これらの組み込みコマンドはかなりの数あります。 chown でファイルの所有権を管理したり、ifconfig でネットワーク設定を構成したり、find でディレクトリを検索したりできます。

しかし、ユーザーが Linux コマンドだけに関心を持っていたら、Bash は存在しなかったでしょう。いいえ、Linux シェルの真の力はスクリプト作成にあります。

スクリプト作成の重要性

スクリプト コマンドの考え方は単純です。システムに実行させるすべてのコマンドを 1 つずつ手動で入力する代わりに、必要に応じて実行できるテキスト ファイルにコマンドを保存します。

これにより、シェル インターフェイスが一種のプログラミング言語に変わり、ユーザーはあらゆるアクションを再利用可能なスクリプトに自動化できます。もちろん、プログラミング言語はコードを保存する機能に加えて、変数や関数などを必要とするため、それ以上のことはありません。

Bash にはこれらの機能がすべて備わっています。これが、サーバーや商用システムの管理にシェル (そしてある程度 Linux 全般) が非常に人気がある理由です。

ホーム ユーザーは一連のボタンをクリックすることで取得できますが、システム管理者はリモートで多数のコンピューターに対して任意のアクションを実行できる必要があります。 Bash スクリプトは、この種の自動システム管理を可能にするものです。

たとえば、Linux でのファイルとフォルダーの名前変更に関するガイドを考えてみましょう。このガイドでは、GUI とスクリプトの両方の方法について説明しています。ご覧のとおり、多数のファイルが関係する場合、スクリプトによる方法ははるかにスケーラブルです。

Bash を使い始める

Bash の良いところは、Linux だけに限定されないことです。デフォルトで Bash に付属している Windows Subsystem for Linux (WSL) を介して Windows に Linux をインストールできるようになりました。

つまり、Linux に完全に切り替えなくても、Bash の実験を開始できます。 Linux サーバーを使用するつもりのないカジュアルなユーザーであっても、Bash シェルの興味深い機能は役に立ちます。

コンピューティング タスクを自動化するための選択肢が Bash だけというわけではありません。 PowerShell は、Windows で動作する同様のインターフェイスです。もちろん、コマンド プロンプトで管理できるものは別として.

Categories: IT Info