Bash vs. Dash

Autor: Laura McKinney
Dátum Stvorenia: 6 Apríl 2021
Dátum Aktualizácie: 16 Smieť 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, ktorý má zlú použiteľnosť podľa moderných štandardov, keď sa používa ako interaktívny prihlasovací shell, ale je rýchlejší pri spúšťaní skriptov kompatibilných s POSIX ako Bash.Bash má oveľa viac funkcií a je obzvlášť výhodný pri interaktívnom použití (hoci obsahuje viac programovacích funkcií). Bash sa zvyčajne poskytuje ako predvolený interaktívny shell, zatiaľ čo Debian a deriváty Debian, ako je Ubuntu, poskytujú Dash ako implementáciu / bin / sh, čím spôsobujú, že skripty s shebangmi #! / Bin / sh sú štandardne interpretované radšej ako Bash. V prípade skriptov, ktoré vyžadujú na vykonanie Bash, sa Bash bude naďalej používať ako tlmočník, ak je shebang #! / Bin / bash. V rámci spúšťacieho procesu Ubuntu sa spúšťa veľké množstvo inštancií shellu. Skôr než zmeniť každú z nich samostatne tak, aby sa spúšťala výslovne pod / bin / dash, čo je zmena, ktorá by si vyžadovala významnú nepretržitú údržbu a ktorá by bola náchylná k regresii, ak by jej nebola venovaná veľká pozornosť, hlavný vývojový tím Ubuntu cítil, že je najlepšie jednoducho zmeniť predvolený shell.


Obsah: Rozdiel medzi Bash a Dash

  • Čo je Bash?
  • Čo je Dash?
  • Kľúčové rozdiely
  • Vysvetlenie videa

Čo je Bash?

Bash je škrupina Bourne-Again. Bash je vynikajúci plne vybavený obal vhodný na interaktívne použitie; v skutočnosti je to stále predvolený prihlasovací shell. Bash je určený pre ľudí a poskytuje nadmnožinu funkcií POSIX.

Čo je Dash?

Dash je Debian Almquist Shell. Dash implementuje Single Unix Spec, potom nemusí robiť viac, aby vyhovel tejto formálnej špecifikácii. Pomlčka slúži na neinteraktívne vykonávanie skriptov. Dash podporuje iba funkcie kompatibilné s POSIX.

Kľúčové rozdiely

  1. Bash je vynikajúci plne vybavený obal vhodný na interaktívne použitie; v skutočnosti je to stále predvolený prihlasovací shell. Je však dosť veľké a pomalé naštartovanie a prevádzka v porovnaní s pomlčkou.
  2. Dash implementuje Single Unix Spec, potom nemusí robiť viac, aby vyhovel tejto formálnej špecifikácii. Niektoré z „bashizmov“ sú však pohodlné, len málo prispievajú k veľkosti pomlčky a oveľa ľahšie by bolo použitie pomlčky ako alternatívy.
  3. Mnoho skriptov shellu, ktoré obsahujú súbor príkazov –k, nie je podporovaná pomlčkou, ale podporuje bash.
  4. Bash Podporuje rovnaké skriptovacie príkazy ako Dash, ako aj vlastné ďalšie príkazy. Dash podporuje iba funkcie kompatibilné s POSIX.
  5. Bash je určený pre ľudí a poskytuje nadmnožinu funkcií POSIX, Dash je pre neinteraktívne vykonávanie skriptov.
  6. Bash podporuje dokončenie karty a podporuje históriu príkazov.
  7. Pomlčka je iba 100 000 v porovnaní s 900 000 Bash.
  8. Pomlčka je pre rýchle spustenie a vykonanie skriptu v porovnaní s Bashom.