Bash VS Zsh: Különbségek és összehasonlítás

Bash Vs Zsh Differences



Bash A shell a Linux alapértelmezett héja, és a Bourne Shell lecserélésekor jelenik meg. Számos automatizált feladat és programozási megoldás elvégezhető Bash könnyen. A Linuxon sok más héj is rendelkezésre áll, hogy elvégezze az azonos típusú munkákat Bash . Z héj vagy Zsh ezek egyike, amelyet később találtak ki Bash . Számos olyan funkcióval rendelkezik, mint a Bash, de néhány funkciója Zsh a Bash -nél jobbá és jobbá tenni, például a helyesírás -javítást, a cd -automatizálást, a jobb témát és a beépülő modulok támogatását stb. A Zsh vagy Z shell alapértelmezés szerint nincs telepítve a rendszerbe. A felhasználóknak telepíteniük kell ezt a héjat a használatához. Néhány jellemző közös Bash és Zsh de vannak jelentős különbségek e héjak között, amelyeket ebben a cikkben, megfelelő magyarázattal írunk le.

A 'használata CD ’Parancs

A „cd” parancsot a Bash és a Zsh shell egyaránt használja az aktuális könyvtár megváltoztatásához. Meghívják azt a szolgáltatást, amellyel a könyvtárak rekurzívan keresnek a fájlok és mappák kiderítésére rekurzív útbővítés amelyet csak a zsh támogat. Itt látható a „cd” parancs használata a bash és zsh shell fájlokban.







Bash

A könyvtár megváltoztatásához be kell írnia a könyvtár teljes elérési útját a bash -ban, és a rekurzív útvonal -bővítést a bash nem támogatja.



$CD kód/piton



Zsh

A könyvtár és a fájl könnyen kereshető ebben a héjban. Ha gépel cd + szóköz + c + tab zsh shell -ben, akkor minden fájl vagy mappa nevét ezzel kezdi 'C ”, És megjelenik az elsőként megtalált fájl vagy mappa neve.





% CDc

Például, ha a kód mappa megtalálható, és megjelenik. Ha újra beírtad '/P' akkor megjelenik a fájlok és a mappa neve ' o '.

% CDo



Helyesírás -javítás

A helyesírás -ellenőrző nagyon hasznos funkció minden héj esetén. Ezzel a funkcióval a felhasználók könnyen kijavíthatják a gépelési hibát. Ezt a funkciót mindkettő támogatja Bash és Zsh. De a helyesírás -javítás hatékonyabban elvégezhető Zsh héj. Ennek a funkciónak a használatát az alábbi két héj esetében mutatjuk be.

Bash

Tegyük fel, hogy a ' Zene 'De beírtad' Mugic ' véletlenül, akkor a bash shell alapértelmezés szerint nem észleli a helyesírási hibát, és hibaüzenetet jelenít meg: nincs ilyen fájl, vagy könyvtár .

$CDMugic

Engedélyeznie kell a helyesírás -ellenőrzőt az ilyen típusú problémák megoldásához. Nyisd ki ~/.bashrc fájlt bármely szerkesztőben, hogy hozzáadja a sort a helyesírás -ellenőrzés engedélyezéséhez. Itt, a nano szerkesztő a fájl szerkesztésére szolgál.

$nano~/.bashrc

Adja hozzá a következő sort a fájl végéhez, mentse és zárja be a fájlt.

üzletek -scdspell

Most futtassa a következő parancsot a módosítás végleges megerősítéséhez.

$forrás~/.bashrc

Ha futtatod a fentieket ' CD' parancsot helyesírási hibával a terminálról, akkor automatikusan kijavítja a mappa nevét.

$CDMugic

Zsh

A helyesírás -ellenőrző alapértelmezés szerint nincs engedélyezve a zsh shellben sem. Tehát, ha az „echo” parancsot, mint a következő parancsot, helyesírási hibával futtatja, akkor megjelenik a hibaüzenet.

%ehco'Helló Világ'

Nyisd ki ~/.zshrc fájlt bármelyik szerkesztőben, és adja hozzá a következő sorokat a fájl végéhez. Az első sor engedélyezi a helyesírás -ellenőrzést Zsh -ban. A helyesírás -ellenőrző alapértelmezett beállítási értékei a következők: [nyae] ez jelzi nem, igen, megszakítani és szerkeszteni . A második sor megváltoztatja az alapértelmezett értékeket, hogy a beállítások érthetőbbek legyenek a felhasználó számára. Itt, nano szerkesztő a fájl szerkesztésére szolgál.

% nano~/.zshrc
állítsa be helyesen
export SPROMPT='Helyes %R - %r? [Igen, nem, megszakítás, szerkesztés] '

Mentse el és lépjen ki a fájlból, és futtassa a következő parancsot a módosítás frissítéséhez.

% forrás~/.zshrc

Ismét futtassa az előző parancsot, és ellenőrizze a kimenetet. Most a felhasználó lehetőséget kap a kimenet javítására. Ha y -t ír be, akkor a helyesírás automatikusan javításra kerül.

%ehco'Helló Világ'

Ha színek használatával szeretné hatékonyabbá tenni a kimenetet, akkor futtassa a következő parancsot a zsh shellből a szín engedélyezéséhez.

%automatikus U színek betöltése&&színek

Ezután adja hozzá a következő sort ~/.zshrc fájl, mint korábban.

export SPROMPT='Helyes$ fg[piros]%R$ reset_colornak nek$ fg[zöld]%r$ reset_color?
[Igen, nem, megszakítás, szerkesztés] '

Most futtasson bármilyen parancsot helyesírási hibával, és ellenőrizze a kimenetet. Itt a hibaszó piros színnel jelenik meg, a helyes szó pedig zöld színnel.

%ehco'Helló Világ'

Témák használata

A shell parancs megjelenése megváltoztatható különböző témák és beépülő modulok használatával. Mind a bash, mind a zsh shellnek sokféle témája van a shell megjelenésének megváltoztatására. A cikk következő részében bemutatjuk, hogyan használható a téma a bash és a zsh shell -ben.

Bash

Bármely bash téma telepítéséhez telepítenie kell a git -et. Futtassa a következő parancsot a git csomag telepítéséhez.

$sudo apt-get install megy

Telepítése után a megy , futtassa a következő parancsot a klón létrehozásához Bash-it sablon.

$git klón --mélység=1https://github.com/Bash-it/bash-it.git ~/.bash_it

Futtassa a következő parancsot a telepítéshez Bash-it sablon klónozása után. Nyomja meg ' és 'Amikor a rendszer kéri a biztonsági mentés megőrzését ~/.bash_profile vagy ~/.bashrc és függelék bash-it sablon a fájl végén.

A telepítés befejezése után a következő kimenet jelenik meg.

Most, ha megnyitja a ~/.bashrc fájl bármely szerkesztő használatával a fájl a következő tartalmat fogja tartalmazni. A „bobby” a bash-it sablon alapértelmezett témája.

Futtassa a következő parancsot a shell frissítésének megerősítéséhez.

$forrás~/.bashrc

A sablon megfelelő telepítése után a következő üzenet jelenik meg a terminálon. Most zárja be a terminált. A terminál megnyitásakor ugyanazt a bash parancsot fogja látni.

Számos téma áll rendelkezésre bash-it sablonozza a bash prompt megjelenítését különböző módokon. Az egyik az, hogy ' irigység' téma. Ha be szeretné állítani ezt a témát, nyissa meg a ~/.bashrc fájlt bármely szerkesztővel, és módosítsa a BASH_IT_THEME 'Értéke' irigység '.

Ismét futtassa a ' forrás ’Parancsot a frissítés végleges megerősítésére. Az „irigység” téma beállítása után a következő kimenet jelenik meg.

Zsh

A bashhoz hasonlóan a zsh shell számos témát tartalmaz. Az egyik zsh téma az jajjj . Futtassa a következő parancsot a téma telepítéséhez a zsh shell számára.

% SH -c '$ (curl -fsSL
https://raw.github.com/robbyrussell/oh-my-zsh/master/tools/install.sh) '

A téma telepítése után nyomja meg a ' és' hogy az alapértelmezett héj legyen a zsh.

A rendszer a root jelszót kéri a telepítési folyamat befejezéséhez. A telepítés befejezése után a következő kimenet jelenik meg.

Most, ha megnyitja a ~/.zshrc fájlt, látni fogja a következő bejegyzéseket jajjj sablon. „Robbyrussell” a sablon alapértelmezett témája.

A változtatás tartós megtartásához futtassa a „source” parancsot.

% forrás~/.zshrc

Ha a témát „ nyíl 'Majd nyissa meg a ~/.zshrc fájlt bármely szerkesztőben, és módosítsa a ZSH_THEME ' nak nek 'nyíl '.

Ismét futtatnia kell a „source” parancsot, hogy véglegesen frissítse a zsh shell változását. A téma beállítása után a következő nyíl szimbólum jelenik meg.

% forrás~/.zshrc

Ha bezárja a terminált, és újra kinyitja a zsh héjat, akkor a következő kimenet jelenik meg.

A helyettesítő karakterek használata

A helyettesítő karakter bővítés bash -ban különböző módon, beállítás nélkül használható. De a helyettesítő karakterek bővítése alapértelmezés szerint nincs engedélyezve a zsh shellben. A cikk ebben a részében bemutatjuk, hogyan használható a helyettesítő karakter kibővítése bash és zsh fájlokban.

Bash

Tegyük fel, hogy az „echo” paranccsal meg kell találnia az összes fájlt, amelynek kiterjesztése az aktuális hely. Itt az érték: *.log ' hozzá van rendelve a változóhoz, fájlokat amelyeket az „echo” parancsban használnak az összes naplófájl listájának megjelenítéséhez.

$ls
$fájlokat='*.log'
$kidobta $ fájlokat

Zsh

Ha a fenti parancsokat zsh shellben futtatja, akkor a $ fájlok értéke kerül kinyomtatásra a naplófájl lista helyett, mert a zsh shell alapértelmezés szerint nem engedélyezi a helyettesítő karakterek bővítését.

% ls
% fájlt='*.log'
% kidobta $ fájlokat

Futtassa a következő parancsot a zsh helyettesítő karakter bővítésének engedélyezéséhez.

% készlet -vagyGLOB_SUBST

Ha az előző parancsokat futtatja, megjelenik a naplófájlok listája.

Következtetés

A Bash és a Zsh nagyon hasznos héjak a Linux felhasználók számára. Mindkét héjnak van néhány hasznos tulajdonsága. A felhasználó kiválaszthatja a héjat a szükséges feladat alapján. E két héj között néhány fontos különbséget ismertetünk ebben a cikkben, megfelelő példákkal. Remélem, a két héj közötti különbségek a cikk elolvasása után tisztázódnak az olvasók számára