rbash
現在は、、、bash
またはdash
とともにCLI(コマンドラインインタフェース)を使用していますsh
。この事実を考慮すると、CLIは次のように仮定できます。いいえシェルに関連して、これらのすべてのシェルを削除しても、いくつかのデフォルト/デフォルト/非常に限られたCLIを引き続き使用できます。
私の質問
GUIのないOSから上記のシェルをすべて削除しても、一種のデフォルトCLIはそのまま残りますか?
ノート
私はCLIがカーネルの一部になるとは思わない。私が理解しているように、カーネルは通常シェルのようなプロキシを介してのみアクセスできるからです。
私もtmuxとscreenを検討していましたが、タイトルと質問から削除しました。
答え1
いいえ。これらのさまざまなシェルはすべて非常に似ているため、より基本的なCLUIの上で実行されていると仮定しますが、これは間違っています。各シェルはカーネルに別々のCLIインターフェイスを実装し、すべてがやや似ているようです(すべて「Unix」シェルであり、許容される標準にある程度厳密に準拠し、すべて同じタイプの端末デバイスで実行されるため)。 CLUI は各シェルプログラムに個別にコーディングされます。これらは独立しており、一部のデフォルトCLUIを共有しません。
すべてのシェルを削除するとCLUIはありません。これにより、子供のペンギンが泣きました:(
答え2
2つの答えがあります:はいといいえ:
いいえ
シェルを削除すると、システムの動作が停止します。シェルは非常に重要な用途に広く使用され使用されています。たとえば、ログインプログラムはシェルスクリプトによって起動されます(他のすべても通常この目的で使用されるシェルであるシェルスクリプトによって起動されますsh
)。したがって、シェルがないとログインできません。シェル以外の環境にログインしても同様です。
はい
ご確認のとおり、さまざまなコンポーネントがあります。
- カーネル(例:Linux、BSDカーネル、cygwin)、
- 仮想端末/ターミナルエミュレータ(例:
konsole
Linuxxterm
コンソール)、 - マルチプレクサ(たとえば
screen
、、tmux
)、 - シェル(例
bash
:)dash
、シェル(例:、)csh
で実行されるプログラム。ls
grep
これらのいずれかを変更し、さまざまな組み合わせで使用できます。