回答:
Windowsでは、コマンドプロンプトを開くと、ほとんどの場合、実行中のプログラムはcmd.exeです。これは、古いDOSベースのの拡張NT派生物でありcommand.com、さらに古いCP / M CCPコマンドインタープリタと類似しています。
Linuxでは、@ Griffinが言及bashしているように、グラフィカル環境で使用している場合、通常は何らかのターミナルエミュレータで実行しています。(これは、ディストリビューションやデスクトップ環境によって大きく異なります)。これは "Bourne Again SHell"を表しています。これは、shUNIXで長い間標準として使用されていた、以前の "Bourne"シェル()の拡張バージョンだからです。そこのような一般的に使用されている他の「代替」のシェルだcsh、kshとtcsh。
Windows cmd.exeもシェルと見なすことができます(同様にexplorer.exe)。
WindowsコマンドプロンプトとすべてのUnixシェルには、いくつかの「ビルトイン」、つまり完全にシェル内で処理されるコマンドがあります。これには、いくつかの基本的なコマンド(などcd)と、コマンドのバッチファイルが実行された場合にスクリプトフローを制御する多くの条件付きコマンドと演算子が含まれます。
ただし、LinuxとWindowsの両方で、便利なことを行う「コマンド」の大部分は、実際にはシェルによって「呼び出される」外部プログラムです。そしてそれが、オペレーターがプログラムの引数を指定してプログラムを開始できるようにするシェルの主な目的です。これは厳密にはプログラミング言語ではなく、単にプログラムを起動するためのフレームワークです。
Linux、またはその他のUnixベースのシステムでは、これをシェルスクリプトと呼びます。