Zsh vs Bash - A 36 legfontosabb különbség, amelyet tudnia kell

Tartalomjegyzék:

Anonim

Különbség a Zsh és Bash között

  • A Zsh-t Z Shellnek hívják, amely a Bash olyan kiterjesztése, amely számos új funkcióval és témával rendelkezik. Paul Falstad 1990-ben adta ki a Zsh-t. A Zsh-nak hasonlósága van a Korn héjával is. A Linux és a Mac OS a Bash-ot használja alapértelmezett héjként.
  • A Bash a Bourne-again-héj rövidítése. 1971-ben kiadták a UNIX operációs rendszert, a Thompson héjával együtt. 1979-ben a Thompson héját módosították és Bourne héjként engedték el. Brian Fox 1989-ben kiadta a Bash-ot projektjéhez, amely továbbfejlesztette korábbi verzióit. A Bash kiadás tovább javította szkriptnyelvként való használatát. Az alapértelmezett Zsh eltér a Bash-tól.

Összehasonlítás a Zsh és Bash között (Infographics)

Az alábbiakban látható a 36 legjobb összehasonlítás a Zsh és Bash között:

Főbb különbségek a Zsh és a Bash között

Beszéljünk néhány, a Zsh vs Bash közötti legfontosabb különbségről:

  • A Zsh interaktívabb és testreszabhatóbb, mint a Bash.
  • A Zsh lebegőpontos támogatással rendelkezik, amelynek Bash nem rendelkezik.
  • A hasító adatstruktúrák Zsh-ben támogatottak, amelyek nem jelennek meg a bashban.
  • A Bash hívóképessége jobb, ha összehasonlítjuk a Zsh-val.
  • A gyors megjelenés Bash-ben vezérelhető, míg a Zsh testreszabható.
  • A konfigurációs fájlok .bashrc nem bejelentkezési interaktív héjakban és .profile vagy .bash_profile a Bash bejelentkezési héjában. A Zsh-ben a nem bejelentkezési héjak .zshrc, a bejelentkezési héjak pedig .zprofile.
  • A Zsh tömböket 1-től hosszúságig, míg Bash-t -1-ig indexelik.
  • Zsh-ben, ha a helyettesítő karakterek nem egyeznek meg egyetlen fájllal, akkor hibát okoz. Bash-ban nem változott.
  • A csővezeték jobb oldalát Zsh-ben szülőhéjaként futtatják, míg Bash-ban subhellként futtatják.
  • Zsh-ban a zmv függvényt használják a tömeges átnevezésre, míg Bash-ban a paraméter-kiterjesztési funkciót kell használni.
  • Bash jó szkriptolási képességekkel rendelkezik egyetlen sorban, míg Zsh-ban nem találtuk ugyanazt.
  • A kimenetet alapértelmezés szerint egy ideiglenes fájl tárolja Zsh-ban, míg a Bash-ban nem.
  • A Bash számos beépített funkciója megkönnyíti az összetett programokat, míg a Zsh-ban a komplex programok beépített funkciói kevesebbek.
  • A Zsh fájljait hatékonyan kezeli, míg Bash nem tudja jól kezelni fájljait.

A Zsh és Bash összehasonlító táblázata

Az alábbi táblázat összefoglalja a Zsh és Bash összehasonlításait:

Sr nemzshBash

1

A felhasználók kevesebb, mint a BashA felhasználók több, és így a közösség támogatása is

2

Az automatikus befejezés gyorsabbAz automatikus befejezés nem gyorsabb, mint a Zsh

3

A Zsh inline helyettesítő karakterisztikával rendelkezikBashnek nincs inline helyettesítő karaktere

4

A lap kitöltése olyan, mint egy legördülő menü a Zsh-ben.A lap kitöltése olyan, mint a Bash parancskimenete.

5

Az Zsh előtag- és utótagparancs álneveket tartalmaz.Bash-nek nincs előtag- és utótagparancs álneve.

6

Zsh jobban követi a POSIX szabványt.Bash nem követi annyira a POSIX szabványt, mint a Zsh.

7

A Zsh funkció jobban konfigurálható.A Bash funkció nem sokkal konfigurálható.

8

A lap segítségével választhat az opciók között.A Bashban ilyen lehetőség nem érhető el.

9

A Zsh-nak számos témája és beépülő modulja vanA témák és beépülő modulok bash lehetősége kevesebb.

10

A könyvtárnév megváltoztatása egyszerűen megtörténik a Zsh-ben.A könyvtárnév nem módosítható automatikusan a Bash alkalmazásban.

11

Zsh javítja a szavak helyesírását és kiegészítését.Bash semmit sem fog megjavítani.

12

A változó értékének figyelembevétele mellett a Zsh számos módon alkalmazza a transzformációt.Bashnek nagyon kevés módja van az átalakítás alkalmazására a változóra.

13

A Zsh földgömb-minősítői a metaadatokon alapuló megfelelő fájlokat jelenítik meg.Bash-nak nincs Glob selejtezője.

14

Az extra helyettesítő karakterek automatikusan bekapcsolódnak a Zsh-ben.Bash-ban az extra helyettesítő karakterek engedélyezve vannak a shopt -s extglob segítségével.

15

A # # alapértelmezés szerint nem tekinthető megjegyzésként a Zsh-ben.Bash-ben a # alapértelmezés szerint megjegyzés.

16

A Zsh beállította a beállítást.Bash beállította a beállításokat.

17

A Zsh a parancs- és fájlneveket a compinit futtatásával fejezi be.Bash a bash_completion futtatásával fejezi be a parancs- és fájlneveket.

18

A Zsh pontosabb, és ha valami nincs rendben, akkor hibát jelez.Bash olyan dolgokat csinál önmagában, amelyek talán nem helyesek, de érthetőek.

19

A Zsh prompt tartalmazza a százalékos menekülést.A Bash promptnél van egy fordított perjel.

20

A Zsh segítségével divatos utasításokat készíthetünk.Bash-ban nem tudunk képzeletbeli utasításokat készíteni.

21

A kötés gombjait Zsh-ben a bindkey végzi. beépített.A Bash az .inputrc-t és a kötéskészletet használja a kulcsok kötésére.

22

A felhasználói konfigurációs beállításokat a .zshrc fájl tárolja.A felhasználói konfigurációs beállításokat a .bashrc fájl tárolja.

23

A Zsh-nek Oh-my-Zsh közössége van, amely segít a szkriptek készítésében.A bashnak nincs meghatározott közössége mint ilyen, de mivel régi, sok online közösség támogatja a szkriptek készítését.

24

A Zsh osztott képernyőt jeleníthet meg, hasonlóan a vim osztott képernyőjéhez.A Bashban ilyen lehetőség nem érhető el.

25

A számítások Zsh-ban végezhetők el a zcalc paranccsal.Az Expr és a bc külső számológépet a Bash alkalmazásában használják számítások elvégzésére.

26

Zsh-ben a zparseopts parancs a parancsfájl elemzésére szolgál.A beépített getoptok parancsot a Bash-ben használják a szkriptek elemzésére.

27

A kibővített álnevek bárhol a sorban megengedettek, ha az álnevet a parancsban használják.Bash nem engedélyezi ezt a funkciót a sorban.

28

A Zsh környezeti szkriptei: zlogin, zlogout, zprofile, zshenv, zshrc.Bash-nak nincs sok környezeti szkripte.

29

Az indítás során a menedéket nem futtatják.A Shellopts automatikusan fut a Bash indításakor.

30

A szkript nem olyan jó, mint Bash.Bash jó szkriptolási képességekkel rendelkezik.

31

Az előzmények minden esetben meg vannak osztva a Zsh-benA történelem megosztása Bashban nem olyan egyszerű.

32

A Zsh egyáltalán nem hasonlít az Emacs-hez.A Bash parancsikonjai nagyon hasonlóak az Emacshez.

33

A testreszabást a Zsh telepítési folyamat során végzik el.A testreszabás a konfigurációs beállítások Bash-ban történő ellenőrzésével történik.

34

A konfigurációs fájlokat nem könnyű felfedezni.A konfigurációs fájlok egyszerűvé válnak a Bash-ban.

35

A Zsh számos fejlett funkcióval rendelkezik.A szolgáltatások nem fejlett.

36

Az automatikus kitöltés a Zsh egyik jellemzője.Az automatikus kiegészítéshez harmadik féltől származó bővítményeket kell telepíteni.

Következtetés

Az interaktív konfigurációs funkcióknak sok különbség van a Zsh és a Bash összehasonlításakor. A Zsh kiterjeszthetőségéről, jó testreszabásáról és fejlett funkcióiról ismert. Mivel a Zsh Bash-ból készül, a szkriptek csaknem 90% -a hasonló, és kompatibilis a Bash-szal. A Zsh-nek és a Bash-nek is sok hasonlósága van, és könnyen hordozhatóak. Sok rendszer elkezdte a Zsh használatát alapértelmezett héjként.

Ajánlott cikkek

Ez egy útmutató a Zsh vs Bash-hoz. Itt a Zsh vs Bash kulcsfontosságú különbségeket is tárgyaljuk fej-fej összehasonlítás (infographics) és az összehasonlító táblázat segítségével. Lehet, hogy megnézi a következő cikkeket is, ha többet szeretne megtudni-

  1. Rozsda vs C ++
  2. Fizikai cím vs logikai cím
  3. Lista vs készlet - Hasznos összehasonlítások
  4. Array vs ArrayList