Zsh vs Bash - 36 najčastejších rozdielov, ktoré by ste mali vedieť

Obsah:

Anonim

Rozdiel medzi Zsh vs Bash

  • Zsh sa nazýva Z Shell, čo je rozšírenie Bash, ktoré má veľa nových funkcií a tém. Zsh bol prepustený v roku 1990 Paul Falstad. Zsh má podobnosť aj s Korn shellom. Linux a Mac OS používajú Bash ako svoj predvolený shell.
  • Bash je skratka Bourneovho plášťa. V roku 1971 bol vydaný operačný systém UNIX spolu s shellom Thompson. V roku 1979 bola škrupina Thompsona upravená a prepustená ako škrupina Bourne. Brian Fox vydal Bash v roku 1989 pre svoj projekt, ktorý poskytoval vylepšenia oproti predchádzajúcim verziám. Vydanie Bash vylepšilo jeho použitie ako skriptovacieho jazyka. Predvolená hodnota Zsh sa líši od Bash.

Porovnanie medzi hlavami medzi Zsh vs Bash (infografika)

Nižšie je prvých 36 porovnaní medzi Zsh vs Bash:

Kľúčové rozdiely medzi Zsh vs Bash

Poďme diskutovať o niektorých hlavných kľúčových rozdieloch medzi Zsh vs Bash:

  • Zsh je viac interaktívny a prispôsobiteľný ako Bash.
  • Zsh má podporu s pohyblivou rádovou čiarkou, ktorú Bash nevlastní.
  • Štruktúra dát hash je podporovaná v Zsh, ktoré nie sú prítomné v Bash.
  • Funkcie vyvolania v Bash sú lepšie v porovnaní so Zsh.
  • Okamžitý vzhľad je možné ovládať v Bash, zatiaľ čo Zsh je prispôsobiteľný.
  • Konfiguračné súbory sú .bashrc v interaktívnych shelloch bez prihlásenia a .profile alebo .bash_profile v prihlasovacích schránkach Bash. V Zsh sú non-login shelly .zshrc a login shelly sú .zprofile.
  • Polia Zsh sú indexované od 1 do dĺžky, zatiaľ čo Bash je indexované od -1 do dĺžky.
  • V prípade Zsh, ak zástupné znaky nezodpovedajú žiadnemu súboru, vyvolá chybu. V režime Bash ostáva nezmenený.
  • Pravá strana potrubia je spustená ako nadradená schránka v Zsh, zatiaľ čo v Bash je spustená ako podshell.
  • V Zsh sa funkcia zmv používa na hromadné premenovanie, zatiaľ čo v Bash musíme použiť funkciu rozšírenia parametrov.
  • Bash má dobré skriptovacie schopnosti na jednom riadku, zatiaľ čo v Zsh sme to nenašli.
  • Výstup je predvolene uložený v dočasnom súbore v Zsh, zatiaľ čo v Bash to nie je.
  • Mnoho vstavaných funkcií v Bash uľahčuje zložité programy, zatiaľ čo v Zsh vstavané funkcie pre zložité programy sú menšie.
  • Zsh spravuje svoje súbory efektívne, zatiaľ čo Bash nie je v prevádzke svojich súborov.

Porovnávacia tabuľka Zsh vs Bash

V nasledujúcej tabuľke sú zhrnuté porovnania medzi Zsh vs Bash:

Sr č.Zshtresnúť

1

Užívatelia sú v porovnaní s Bashom menejUžívatelia sú viac, a teda aj komunitná podpora

2

Automatické dokončenie je rýchlejšieAutomatické dokončenie nie je rýchlejšie ako Zsh

3

Zsh má vložené rozšírenie zástupných znakovBash nemá inline zástupné rozšírenie

4

Dokončenie karty je ako rozbaľovacia ponuka v Zsh.Dokončenie karty je ako výstup príkazu v Bash.

5

Zsh má aliasy príkazov prefix a sufix.Bash nemá predpony a prípony.

6

Zsh sa viac riadi štandardom POSIX.Bash nerešpektuje štandard POSIXu rovnako ako Zsh.

7

Funkčnosť Zsh je konfigurovateľnejšia.Funkcia bash nie je príliš konfigurovateľná.

8

Karta sa používa na navigáciu medzi možnosťami.V službe Bash nie je k dispozícii žiadna takáto možnosť.

9

Zsh má veľa tém a doplnkovVoľba bash pre témy a doplnky je menšia.

10

Zmena názvu adresára sa dá ľahko vykonať v Zsh.Názov adresára sa v Bash nedá automaticky zmeniť.

11

Zsh opraví pravopis a doplnenie slov.Bash sám nič neopraví.

12

Keď Zsh vezme hodnotu premennej, Zsh má veľa spôsobov, ako aplikovať transformáciu.Bash má veľmi málo spôsobov, ako aplikovať transformáciu na premennú.

13

Kvalifikátory glob v Zsh ukazujú zodpovedajúce súbory, ktoré sú založené na metaúdajoch.Bash nemá kvalifikáciu Glob.

14

Extra zástupné znaky sú v Zsh automaticky povolené.V Bashi sú pomocou zástupných kódov shopt -s extglob povolené ďalšie zástupné vzory.

15

# sa v Zsh nepovažuje za komentár.V časti Bash je # v predvolenom nastavení považovaný za komentár.

16

Zsh má nastavenie nastavenia.Bash má nastavenia šokov.

17

Zsh dokončí názvy príkazov a súborov spustením compinit.Bash dokončí názvy príkazov a súborov spustením bash_completion.

18

Zsh je presnejšia a ak niečo nie je v poriadku, vykazuje chybu.Bash robí veci sám o sebe, ktoré nemusia byť správne, ale rozumné.

19

Výzva Zsh obsahuje percento únikov.Bash prompt má opačnú lomku.

20

Pomocou Zsh môžeme zostaviť fantastické výzvy.V Bashi nedokážeme vytvárať fantastické výzvy.

21

Viazacie kľúče v Zsh sa vykonávajú väzobným kľúčom. zabudovaný.Bash používa .inputrc a vstavaný bind na viazanie kľúčov.

22

Konfiguračné nastavenia používateľa sú uložené v .zshrc.Používateľské konfiguračné nastavenia sú uložené v .bashrc.

23

Zsh má komunitu Oh-my-Zsh, ktorá pomáha pri skriptovaní.Bash nemá definovanú komunitu ako takú, ale keďže je stará, existuje veľa online komunít, ktoré podporujú skriptovanie.

24

Zsh môže zobraziť rozdelenú obrazovku podobnú rozdelenej obrazovke vim.V službe Bash nie je k dispozícii žiadna takáto možnosť.

25

Výpočty sa môžu vykonávať v Zsh pomocou príkazu zcalc.Expr a bc externá kalkulačka sa používa v Bash na výpočty.

26

V Zsh sa príkaz sparseopts používa na analýzu skriptu.Vstavaný príkaz Getopts sa používa v programe Bash na analýzu skriptov.

27

Rozšírené aliasy sú povolené kdekoľvek na riadku, ak sa alias použije v príkaze.Bash túto funkciu v riadku nepovoľuje.

28

Skripty prostredia Zsh sú zlogin, zlogout, zprofile, zshenv, zshrc.Bash nemá veľa skriptov prostredia.

29

Počas spúšťania nie sú spustené kryty.Úkryty sa spúšťajú automaticky pri spustení basy.

30

Skriptovanie nie je v porovnaní s Bashom také dobré.Bash má dobré skriptovacie schopnosti.

31

História je zdieľaná vo všetkých prípadoch v ZshZdieľanie histórie v službe Bash nie je také ľahké.

32

Zsh nie je vôbec podobný Emacsu.Skratky v Bash sú veľmi podobné Emacs.

33

Prispôsobenie sa vykonáva počas procesu inštalácie v Zsh.Prispôsobenie sa vykonáva kontrolou konfiguračných nastavení v Bash.

34

Konfiguračné súbory nie je ľahké preskúmať.Konfiguračné súbory sú v Bashi ľahké.

35

Zsh má veľa pokročilých funkcií.Funkcie nie sú rozšírené.

36

Automatické dokončenie je vlastnosťou Zsh.Pre automatické dokončenie musia byť nainštalované doplnky tretích strán.

záver

Interaktívne konfiguračné funkcie majú pri porovnaní Zsh a Bash veľa rozdielov. Zsh je známy svojou rozšíriteľnosťou, dobrým prispôsobením a pokročilými funkciami. Pretože Zsh je vyrobený z Bashu, takmer 90% skriptovania je podobné a je kompatibilné s Bashom. Zsh aj Bash majú veľa podobností a sú ľahko prenosné. Mnoho systémov začalo používať Zsh ako svoj predvolený shell.

Odporúčané články

Toto je sprievodca Zsh vs Bash. Ďalej diskutujeme o kľúčových rozdieloch medzi Zsh vs Bash a porovnaním údajov medzi sebou (infografika) a porovnávacou tabuľkou. Môžete sa tiež pozrieť na nasledujúce články, kde sa dozviete viac -

  1. Rust vs C ++
  2. Fyzická adresa vs. logická adresa
  3. Zoznam verzií - užitočné porovnania
  4. Array vs ArrayList