logo

Bash Scripting – Forskellen mellem Zsh og Bash

En shell er et miljø, hvori forskellige kommandoer kan udføres, det giver en grænseflade mellem brugeren og UNIX-systemet. Grundlæggende er en shell en kommandolinjefortolker, som fortolker kommandoerne givet af brugeren, den kan også læse kombinationen af ​​sådanne kommandoer, som er kendt som et shell-script. Skallen giver os et miljø, hvor vi kan udføre vores kommandoer, scripts og programmer.

Her i denne artikel skal vi skelne mellem de to mest populære skaller bash og zsh .



Bash ( Bourne-Again shell)

Bash, eller Bourne-Again Shell, er langt den mest populært anvendte shell, og den kommer installeret som standard shell i de mest populære Linux-distributioner. Bash er standard login-shell for de fleste Linux-distributioner. Det er også tilgængeligt for Windows, og det er standard brugerskal i Ubuntu, Linux Mint, Solaris 11, Pop OS osv.

En bash session

Zsh (Z-skal)

Zsh er også et miljø, der kan bruges som en kommandolinjefortolker til shell scripting eller som en interaktiv login shell. Zsh er standardskallen til macOS og Kali Linux. Zsh giver brugeren mere fleksibilitet ved at tilbyde forskellige funktioner såsom plug-in-understøttelse, bedre tilpasning, temaunderstøttelse, stave-korrektion osv.

En Zsh session



Tabel over forskel mellem Bash og Zsh

Bash

Zsh

Bash er standardskallen til Linux, og den udgives som erstatning for Bourne Shell.



Z shell er bygget oven på bash shell og er en udvidet version af bash med masser af nye funktioner.

Bash læser .bashrc-filen i ikke-login interaktiv shell og .bash_profile i login shells. Zsh læser .zshrc i en interaktiv shell og .zprofile i en login shell.
Bash bruger backslash escapes. Zsh bruger procentvise escapes.
Bash har ikke en indbygget jokertegnudvidelse. Zsh har en indbygget jokertegnudvidelse.
Har ikke tilpasningsmuligheder. Zsh har mange rammer, der giver tilpasning.
Det har ikke mange temaer og plug-in-understøttelse. Har masser af plug-in's og temaer.
Bash mangler syntaksfremhævning og autokorrektionsfunktioner. Zsh har syntaksfremhævning og autokorrektionsfunktioner.
I bash udføres tastebinding ved hjælp af '.inputrc' og 'bind indbygget'. I zsh sker binding ved hjælp af 'bindkey builtin'.