Unix と Linux には、いくつかの「シェル」があります。 シェルとは、OS サービスを利用するためのインターフェイスをユーザーに提供する特別なユーザー プログラムを指します。
よく知られている XNUMX つのシェルは、KSH と Bash です。 これらは、コンピューター プログラミング分野のシェルです。 これら XNUMX つは、特徴的な機能とコマンドのセットを備えています。 これらのシェルは両方とも相互に関連しています。
主要な取り組み
- KSH (KornShell) は古いシェルですが、BASH (Bourne-Again SHell) は追加機能を備えた新しいシェルです。
- BASH はほとんどの Linux ディストリビューションのデフォルト シェルですが、KSH は Unix システムでより一般的です。
- BASH は KSH スクリプトと互換性がありますが、すべての BASH 機能をサポートしているわけではありません。
KSH対バッシュ
KSHはコマンドです 通訳 POSIXと互換性のあるプログラミング言語。 Bash 1970 年代に Steve Bourne によって開発された Bourne シェルの拡張バージョンであり、現在ではほとんどの Linux ディストリビューションでデフォルトのシェルとなっています。 Korn シェルの多くの機能をサポートし、追加機能を備えています。
KSH は、1980 年代初頭に David Korn によって開発された Unix シェルを指します。 これは Bell Lab ユーザーの要求に触発されて開発されたもので、C シェルのいくつかの機能が含まれています。
KSH には下位互換性もあります。 KSH には、主に 93 つのバージョン (PDKSH、KSH、MKSH、KSH88、および KSHXNUMX) があります。
一方、bash は Bourne シェルのクローンを指します。 FSF (Freeware Software Foundation) によって開発され、General Public License (GPL) の下でライセンスおよび作成されました。
Bash シェルは何年も後に KSH によって開発されたため、KSH と比較していくつかの新しいリソースを持つ新しいシェルです。
比較表
比較のパラメータ | KSH | Bash |
---|---|---|
性能 | コマンドとスクリプトの実行を処理する場合、KSH は Bash と比較してはるかに優れたパフォーマンスを提供します。 | コマンドとスクリプトの実行を扱う場合、Bash のパフォーマンスはまずまずです。 |
プログラミング機能 | KSH は、Bash に比べて優れた、はるかに多くのプログラミング機能を提供します。 | Bash のプログラミング機能は、KSH に比べて劣っています。 ただし、Bash には多くのプログラミング機能もあります。 |
Command | KSH は、出力の印刷に print コマンドを使用します。これは Bash よりも優れています。 | Bash は出力を出力するために echo コマンドを使用します。 |
リソース | KSH は Bash よりも早く開発されたため、Bash に比べて KSH のリソースはほとんどありません。 | Bash は新しいシェルであるため、多くのリソースがあり、KSH よりも人気があります。 |
スクリプト | 古い構文を持つため、KSH のスクリプトは読みにくくなります。 | 新しい構文を持つため、Bash のスクリプトは読みやすく、理解しやすいものになっています。 |
KSHとは何ですか?
KSH または Korn シェルは、1980 年代初頭に David Korn 卿によって開発された UNIX シェルを指します。 KSH は、Bash が作成される何年も前に開発されました。
何年も前に開発されたため、Bash に比べてリソースが少なくなっています。 その結果、現在 KSH を使用している人はほとんどいません。
これは、他の重要な UNIX シェルを組み合わせた包括的なバージョンとして開発されました。 Tab C シェルと C シェルのすべての機能と、Bourne シェルのスクリプト言語機能が組み込まれています。
当時、ボーン砲弾は効率の点で最高の砲弾と見なされていました。 最も一般的な Unix シェルは、C シェル、Bourne シェル、および Korn シェルです。
KSH は Bourne シェル ファミリーのメンバーであり、非常に使いやすいです。 その結果、経験の浅いユーザーは KSH を好みます。
KSH の「r history」コマンドは、ユーザーが以前のコマンドにすばやく戻ることができるため、非常に優れています。 出力を印刷する際の KSH の印刷コマンドは非常に効率的です。
KSH は優れたプログラミング機能も提供します。
KSH インタープリターのバイナリー・サイズは 1.6 MB です。 古い構文を持つため、KSH のスクリプトは読みにくくなります。 KSH にはいくつかの連想配列もあり、ループ構文を効率的に簡単に処理できます。
バッシュとは?
Bash または Bourne Again Shell は、Brian Fox によって作成された「sh」という名前の Bourne Shell プログラムのアップグレード版です。
FSF (Freeware Software Foundation) によって開発され、General Public License (GPL) の下でライセンスおよび作成されました。
Bash は、インタラクティブな用途とプログラミング用途の両方で、Bourne Shell の多くの機能を改善しました。 コマンド履歴、コマンド ラインの編集、キーのバインディングなどの機能が含まれています。
Apple の Mac OS とほとんどの Linux Bash では、デフォルトのログイン シェルとして機能します。 また、Windows 10 からもアクセスできます。現在、多くの Linux モードで、デフォルトのシェルになっています。
Bash は、テキスト ウィンドウで実行されるコマンド ライン インタープリターを指します。ユーザーはコマンドを解釈して、いくつかのアクションを実行します。
これらのさまざまなコマンドのセットは、シェル スクリプトと呼ばれます (ファイル内の一連のコマンドとして)。 Bash はこれらのコマンドをシェル スクリプトから読み取り、実行していくつかのアクションを実行します。
KSH と比較して、Bash はより人気があり、より最近であり、最近開発されたため、より多くのリソースも持っています。 その結果、Bash を使用した学習が容易になります。
Bashの最も重要なXNUMXつの利点は、現在のディレクトリを表示するためのプロンプト設定とタブの完了の簡単な方法です。
KSH と Bash の主な違い
- コマンドとスクリプトの実行を処理する場合、KSH は Bash と比較してはるかに優れたパフォーマンスを提供しますが、コマンドとスクリプトの実行を処理する場合、Bash のパフォーマンスはまともです。
- KSH は、Bash に比べて優れた、はるかに多くのプログラミング機能を提供します。 Bash のプログラミング機能は、KSH に比べて劣っています。 ただし、Bash には多くのプログラミング機能もあります。
- KSH は、出力の印刷に print コマンドを使用します。これは Bash よりも優れています。 Bash は出力を出力するために echo コマンドを使用します。
- KSH は Bash よりも早く開発されたため、Bash に比べて KSH のリソースはほとんどありません。 Bash は新しいシェルであるため、多くのリソースがあり、KSH よりも人気があります。
- KSH のスクリプトは、古い構文を使用すると読みにくくなりますが、新しい構文を使用すると、Bash のスクリプトは読みやすく、理解しやすくなります。
- https://scholar.google.com/scholar?hl=en&as_sdt=0%2C5&q=korn+shell&oq=korn+she#d=gs_qabs&u=%23p%3Dzna0kMa6N3MJ
- https://scholar.google.com/scholar?hl=en&as_sdt=0%2C5&q=Bash&btnG=#d=gs_qabs&u=%23p%3DYFtvOe41MKUJ
最終更新日 : 11 年 2023 月 XNUMX 日
Sandeep Bhandari は、Thapar University (2006) でコンピューター工学の学士号を取得しています。 彼はテクノロジー分野で 20 年の経験があります。 彼は、データベース システム、コンピュータ ネットワーク、プログラミングなど、さまざまな技術分野に強い関心を持っています。 彼の詳細については、彼のウェブサイトで読むことができます バイオページ.
リソースの比較により、違いがよりよく理解できました。ありがとうございます。
KSH と Bash の詳細な比較は非常に役立ちます。共有していただきありがとうございます。
説明が素晴らしく、とてもわかりやすく簡潔でした!
同意します、それは素晴らしい投稿でした!
この投稿にどれほど多くの情報が含まれているかは驚くべきことです。どうもありがとう!
KSH と Bash のパフォーマンスの比較は非常に興味深く、素晴らしい投稿だと思いました。
このような有益な記事を提供するために費やされた努力に感謝します。