Bash vs. Dash

Autor: Laura McKinney
Datum Vytvoření: 6 Duben 2021
Datum Aktualizace: 15 Smět 2024
Anonim
Dash Is The Only Acceptable Symlink For /bin/sh
Video: Dash Is The Only Acceptable Symlink For /bin/sh

Obsah

Dash je shell, který má špatnou použitelnost podle moderních standardů, když je použit jako interaktivní přihlašovací shell, ale je rychlejší při provádění skriptů kompatibilních s POSIX než Bash.Bash má mnohem více funkcí a je zvláště výhodný při interaktivním použití (i když obsahuje více programovacích funkcí). Bash je obvykle poskytován jako výchozí interaktivní prostředí, zatímco Debian a deriváty Debian, jako je Ubuntu, poskytují Dash jako implementaci / bin / sh, čímž způsobí, že skripty s shebangy #! / Bin / sh budou standardně interpretovány Dash než Bash. U skriptů, které vyžadují spuštění Bash, bude Bash stále použit jako interpret, pokud je shebang #! / Bin / bash. V rámci spouštěcího procesu Ubuntu je spuštěno velké množství instancí shellu. Spíše než změnit každou z nich samostatně tak, aby probíhala explicitně pod / bin / dash, což je změna, která by vyžadovala významnou průběžnou údržbu a která by mohla podléhat regresi, pokud by jí nebyla věnována velká pozornost. výchozí shell.


Obsah: Rozdíl mezi Bash a Dash

  • Co je Bash?
  • Co je Dash?
  • Klíčové rozdíly
  • Vysvětlení videa

Co je Bash?

Bash je Bourne-Again shell. Bash je vynikající plně funkční shell vhodný pro interaktivní použití; ve skutečnosti je to stále výchozí přihlašovací shell. Bash je určen pro lidské bytosti a poskytuje nadmnožinu funkcí POSIX.

Co je Dash?

Dash je Debian Almquist Shell. Dash implementuje Single Unix Spec, pak to nemusí dělat více, aby splnil formální specifikace. Dash je pro neinteraktivní spuštění skriptu. Dash podporuje pouze funkce kompatibilní s POSIX.

Klíčové rozdíly

  1. Bash je vynikající plně funkční shell vhodný pro interaktivní použití; ve skutečnosti je to stále výchozí přihlašovací shell. Je však poměrně velké a pomalé startovat a pracovat ve srovnání s pomlčkou.
  2. Dash implementuje Single Unix Spec, pak to nemusí dělat více, aby splnil formální specifikace. Ale některé z „bashismů“ jsou pohodlné, jen málo by přidaly velikost pomlčky a usnadnily by použití pomlčky jako alternativy.
  3. Mnoho skriptů prostředí, které obsahují sadu příkazů –k, není pomlčkou podporováno, ale podporuje bash.
  4. Bash Podporuje stejné skriptovací příkazy jako Dash a také své vlastní další příkazy. Dash podporuje pouze funkce kompatibilní s POSIX.
  5. Bash je určen pro lidské bytosti a poskytuje nadmnožinu funkcí POSIX, Dash je pro neinteraktivní provádění skriptů.
  6. Bash podporuje dokončení karty a podporuje historii příkazů.
  7. Dash je pouze 100 000 ve srovnání s Bashovými 900 000.
  8. Dash je pro rychlejší spuštění a spuštění skriptu ve srovnání s Bash.