⌨️世の中のシェルだいたいbash説
Debian / Ubuntu:
デフォルトシェル: bash
Fedora:
デフォルトシェル: bash
CentOS / Red Hat Enterprise Linux (RHEL):
デフォルトシェル: bash
openSUSE:
デフォルトシェル: bash
Arch Linux:
デフォルトシェル: bash
Gentoo:
デフォルトシェル: bash
Slackware:
デフォルトシェル: bash
Alpine Linux:
デフォルトシェル: ash (BusyBoxを利用)
Manjaro (Arch Linuxをベースとするディストリビューション):
デフォルトシェル: bash
Linux Mint (Ubuntuをベースとするディストリビューション):
デフォルトシェル: bash
。
Bash (Bourne Again Shell)
使われているOS: ほとんどのLinuxディストリビューション、macOS、Cygwin、Windows Subsystem for Linux (WSL) など
備考: Steve Bourneが作成したsh (Bourne Shell) の後継としてBrian Foxにより作成されました。
sh (Bourne Shell)
使われているOS: 古いUnixシステム、いくつかの現代のUnixシステムでも互換モードとして存在
備考: 現代の多くのシステムでは、shはbashやdashなどの他のシェルへのシンボリックリンクとして存在しています。
Dash (Debian Almquist Shell)
使われているOS: Debianとその派生ディストリビューション(例: Ubuntu)で /bin/sh として使われることが多い
備考: Almquist Shell (ash) のDebian版。
zsh (Z Shell)
使われているOS: 多くのLinuxディストリビューション、macOS (Catalinaからデフォルトシェルとして採用)
備考: bashと互換性がありながらも、多くの拡張機能を持つ。
csh (C Shell) と tcsh
使われているOS: 旧来のUnixシステム、BSD系
備考: C言語のような構文を持ち、tcshはcshの拡張版。
fish (Friendly Interactive Shell)
使われているOS: 多くのLinuxディストリビューションで利用可能
備考: ユーザーフレンドリーを目指し、直感的な操作が可能。
ksh (KornShell)
使われているOS: 多くのUnixシステム
備考: AT&T Bell LaboratoriesのDavid Kornにより開発。
ash (Almquist Shell)
使われているOS: BSD系、BusyBoxを採用しているシステム(例: Alpine Linux)
備考: 軽量なシェルとして設計されています。
bashとzshは両方とも非常に人気のあるシェルですが、いくつかの重要な違いがあります。以下は、それらの相違点をハイライトしたものです:
起源と歴史:
bash: GNUプロジェクトの一部として、Bourne Shell (sh) の後継として1980年代後半に開発されました。
zsh: Paul Falstadによって1990年にリリースされ、多くのシェルの機能を組み込みながら独自の拡張機能を追加しています。
互換性:
bash: Bourne Shell (sh) との互換性を保持するように設計されています。
zsh: 一般的にbashと互換性がありますが、独自の拡張機能や異なる振る舞いを持つコマンドも存在します。
拡張機能:
bash: プログラミングの機能やジョブ制御など、基本的なシェル機能を持っています。
zsh: bashの機能に加え、より高度な補完機能、プロンプトのカスタマイズオプション、テーマ、プラグインシステムなどの多くの拡張機能を持っています。
コマンド補完:
bash: 基本的なコマンド補完を提供します。
zsh: より強力で洗練された補完システムを持ち、多くのコマンドやパス、オプションの補完が可能です。
プロンプトのカスタマイズ:
bash: 一般的なカスタマイズが可能。
zsh: 右側のプロンプト、多彩なテーマ、プロンプトのコンテキストに応じた表示など、高度なカスタマイズが可能。
配列のインデックス:
bash: 0ベースのインデックス。
zsh: 1ベースのインデックス(ただし、bashの振る舞いを模倣する設定も可能)。
グローバルエイリアス:
bash: サポートしていません。
zsh: コマンドの任意の位置で置き換えが可能なグローバルエイリアスをサポートしています。
インタラクティブ機能:
bash: 基本的なインタラクティブ機能。
zsh: bash以上のインタラクティブな機能、例えば、スペルの自動訂正やインラインのコマンドサジェスチョンなどがあります。
スクリプトの実行:
bash: bashスクリプトを直接実行可能。
zsh: ほとんどのbashスクリプトを実行可能ですが、互換性の問題に遭遇する可能性もあるため、注意が必要です。
bashって種類の魚がいますか?
「Bash」という名前の魚は一般的には存在しません。ただし、英語で「bass」と発音が似ているため、それについて混同があるかもしれません。"Bass"は魚の一種で、多くの異なる種が含まれます。例えば、淡水のブラックバスや海水のシーバスなどがあります。それぞれがスポーツフィッシングの対象としても人気があります。