Rozdíl mezi Zsh vs Bash
- Zsh se nazývá Z Shell, což je rozšíření Bash, které má mnoho nových funkcí a témat. Zsh byl propuštěn v roce 1990 Paul Falstad. Zsh má podobnost s Korn shellem. Linux a Mac OS používají Bash jako jejich výchozí shell.
- Bash je zkratka Bourneovy znovu skořápky. V roce 1971 byl vydán operační systém UNIX spolu s shellem Thompson. V roce 1979, Thompson shell byl upraven a povolený jako Bourne shell. Brian Fox vydal Bash v roce 1989 pro svůj projekt, který poskytoval vylepšení z předchozích verzí. Bash verze vylepšila jeho použití jako skriptovací jazyk. Výchozí Zsh se liší od Bash.
Srovnání hlava-hlava mezi Zsh vs Bash (infografika)
Níže je prvních 36 srovnání mezi Zsh vs Bash:
Klíčové rozdíly mezi Zsh vs Bash
Pojďme diskutovat o některých hlavních klíčových rozdílech mezi Zsh vs Bash:
- Zsh je interaktivnější a přizpůsobitelnější než Bash.
- Zsh má podporu s pohyblivou řádovou čárkou, kterou Bash nevlastní.
- V Zsh jsou podporovány datové struktury hash, které v Bash nejsou.
- Funkce vyvolání v Bashu jsou lepší ve srovnání se Zsh.
- Rychlý vzhled lze ovládat v Bashu, zatímco Zsh je přizpůsobitelný.
- Konfigurační soubory jsou .bashrc v interaktivních shellech bez přihlášení a .profile nebo .bash_profile v přihlašovacích shellech Bash. V Zsh jsou bez přihlašovací skořápky .zshrc a přihlašovací skořápky jsou .zprofile.
- Pole Zsh jsou indexována od 1 do délky, zatímco Bash je indexována od -1 do délky.
- V Zsh, pokud zástupné vzory neodpovídají žádnému souboru, vyvolá chybu. V Bash je ponechán beze změny.
- Pravá strana potrubí je spuštěna jako nadřazený shell v Zsh, zatímco v Bash je spuštěna jako subshell.
- V Zsh se používá funkce zmv pro hromadné přejmenování, zatímco v Bashu musíme použít funkci rozšíření parametrů.
- Bash má dobré skriptovací schopnosti na jednom řádku, zatímco v Zsh jsme to nenašli.
- Výstup je ve výchozím nastavení uložen v dočasném souboru v Zsh, zatímco v Bash není.
- Mnoho vestavěných funkcí v Bash usnadňuje složité programy, zatímco v Zsh jsou vestavěné funkce pro komplexní programy méně.
- Zsh spravuje své soubory efektivně, zatímco Bash neumí ovládat své soubory.
Srovnávací tabulka Zsh vs Bash
Níže uvedená tabulka shrnuje srovnání mezi Zsh vs Bash:
Sr ne. | Zsh | Bash |
1 | Uživatelé jsou ve srovnání s Bashem méně | Uživatelé jsou více, a proto i komunitní podpora |
2 | Automatické dokončení je rychlejší | Automatické dokončení není rychlejší jako Zsh |
3 | Zsh má inline zástupné rozšíření | Bash nemá inline zástupné rozšíření |
4 | Dokončení karty je jako rozbalovací nabídka v Zsh. | Dokončení karty je jako výstup příkazu v Bash. |
5 | Zsh má aliasy příkazů prefixů a přípon. | Bash nemá aliasy příkazů prefixů a přípon. |
6 | Zsh se blíží standardu POSIX. | Bash nedodržuje standard POSIX tolik jako Zsh. |
7 | Funkčnost Zsh je konfigurovatelnější. | Funkce bash není moc konfigurovatelná. |
8 | Karta slouží k navigaci mezi možnostmi. | Ve službě Bash není taková možnost k dispozici. |
9 | Zsh má mnoho témat a pluginů | Možnost bash pro témata a doplňky je menší. |
10 | Změnu názvu adresáře lze snadno provést v Zsh. | Název adresáře nelze v Bashu automaticky změnit. |
11 | Zsh opraví pravopis a doplnění slov. | Bash sám nic neopraví. |
12 | Zatímco Zsh má hodnotu proměnné, Zsh má mnoho způsobů, jak aplikovat transformaci. | Bash má velmi málo způsobů, jak aplikovat transformaci na proměnnou. |
13 | Kvalifikátory globů v Zsh ukazují shodné soubory, které jsou založeny na metadatech. | Bash nemá žádné kvalifikátory Glob. |
14 | Extra zástupné vzory jsou v Zsh povoleny automaticky. | V Bash jsou pomocí zástupných šablon extglob povoleny další zástupné vzory. |
15 | # se ve Zsh ve výchozím nastavení nepovažuje za komentář. | V Bash je # ve výchozím nastavení považován za komentář. |
16 | Zsh má nastavení nastavení. | Bash má šokující nastavení. |
17 | Zsh dokončí názvy příkazů a souborů spuštěním compinit. | Bash dokončí názvy příkazů a souborů spuštěním bash_completion. |
18 | Zsh je přesnější a pokud něco není v pořádku, ukazuje to chybu. | Bash dělá věci sám o sobě, které nemusí být správné, ale rozumné. |
19 | Výzva Zsh obsahuje procenta úniků. | Bash prompt má zpětné lomítko. |
20 | Pomocí Zsh můžeme vytvářet fantastické výzvy. | V Bashi nejsme schopni vytvářet fantastické výzvy. |
21 | Vazebné klíče v Zsh se provádí vazebným klíčem. vestavěný. | Bash používá k propojení klíčů .inputrc a build built. |
22 | Nastavení uživatelské konfigurace jsou uloženy v .zshrc. | Nastavení uživatelské konfigurace jsou uložena v .bashrc. |
23 | Zsh má komunitu Oh-my-Zsh, která pomáhá při skriptování. | Bash nemá definovanou komunitu jako takovou, ale protože je stará, existuje mnoho online komunit, které podporují skriptování. |
24 | Zsh může zobrazit rozdělenou obrazovku podobnou rozdělené obrazovce vim. | Ve službě Bash není taková možnost k dispozici. |
25 | Výpočty lze provádět v Zsh pomocí příkazu zcalc. | Expr a bc externí kalkulačka se používá v Bash k výpočtu. |
26 | V Zsh se příkaz zparseopts používá k analýze skriptu. | Vestavěný příkaz Getopts se v Bashu používá k analýze skriptů. |
27 | Rozšířené aliasy jsou povoleny kdekoli na řádku, pokud je alias použit v příkazu. | Bash neumožňuje tuto funkci v řádku. |
28 | Skripty prostředí Zsh jsou zlogin, zlogout, zprofile, zshenv, zshrc. | Bash nemá mnoho skriptů prostředí. |
29 | Během spouštění se škrty neběží. | Shellopts se spustí automaticky při spuštění Bash. |
30 | Skriptování není ve srovnání s Bash tak dobré. | Bash má dobré skriptovací schopnosti. |
31 | Historie je sdílena ve všech případech v Zsh | Sdílení Bash v historii není tak snadné. |
32 | Zsh není vůbec podobný Emacsu. | Klávesové zkratky v Bashu jsou velmi podobné Emacs. |
33 | Přizpůsobení se provádí během procesu instalace v Zsh. | Přizpůsobení se provádí kontrolou nastavení konfigurace v Bash. |
34 | Konfigurační soubory není snadné prozkoumat. | Konfigurační soubory jsou v Bashu snadné. |
35 | Zsh má mnoho pokročilých funkcí. | Funkce nejsou pokročilé. |
36 | Automatické dokončení je funkcí Zsh. | Pro automatické dokončení musí být nainstalovány doplňky třetích stran. |
Závěr
Interaktivní konfigurační funkce mají při porovnání Zsh a Bash mnoho rozdílů. Zsh je známá svou rozšiřitelností, dobrým přizpůsobením a pokročilými funkcemi. Protože Zsh je vyroben z Bash, téměř 90% skriptování je podobné a je kompatibilní s Bash. Zsh i Bash mají mnoho podobností a jsou snadno přenosné. Mnoho systémů začalo používat Zsh jako svůj výchozí shell.
Doporučené články
Toto je průvodce Zsh vs Bash. Zde také diskutujeme klíčové rozdíly mezi Zsh vs Bash s porovnáváním hlava-hlava (infografika) a srovnávací tabulkou. Další informace naleznete také v následujících článcích.
- Rust vs C ++
- Fyzická adresa vs. logická adresa
- Seznam vs Set - užitečné srovnání
- Array vs ArrayList