-1

Unix 環境のロジックに興味がありました。私は、Unix はオペレーティング システムであると同時にシェルでもあるという印象を受けています。サブセットとして、Bourne、Bash、および Korn シェルなどのより具体的なシェルがあります。そして、これらのシェルはインタープリターであり、スクリプトを解釈する独自の機能を持ち、ping、pwd などの機能も持っていますか? では、シェルの中にシェルがあるのですか?私が言ったことはすべて正しいですか?

4

1 に答える 1

1

Unix オペレーティング システムはシェルではありません。

シェルとは、プログラムを実行してデータ ストリームを操作することで、コンピューターとの対話を容易にする単なるプログラムです。

あなたが言及した「関数」はプログラムであり、シェルの一部ではありません。

必要に応じて、別のシェルからシェルを実行できます。たとえば、bash セッションにいて、何かのために csh に切り替えたいとします。実行cshし、終了したらexit、bash シェルに戻ります。

必要に応じて、bash セッション内で bash の別のコピーを実行できます。いくつかの環境変数を変更し、戻ったときに変更を元に戻したい場合に、これを行うことがあります。

これらすべてのケースで、シェルからプログラムを実行し、終了するのを待つだけでした。そのプログラムもたまたまシェルだったとしても、それは特別なことではありません。

于 2013-07-21T23:10:05.477 に答える