Hvilke av disse 5 Linux-skjellene er best?

Hvilke av disse 5 Linux-skjellene er best? / Linux

Gledelig å bruke bash-skallet i Linux? Eller foretrekker du å prøve et alternativ? Det er tsch, fisk, KornShell og Z Shell å velge mellom. Men hvilken av disse Linux-skjellene er best?

Hva er et skall?

Vanligvis, når du skriver et søknad, er det gjort på et språk på høyt nivå som mennesker kan forstå. Eksempler på disse er C #, Java, C ++, etc. Tro det eller ei, ser datamaskinen din alt som 1s som 0s eller, som vanlig kjent, binær eller maskinkode. Hva er binært? [Teknologi forklart] Hva er binært? [Teknologi forklart] Gitt at binær er så helt grunnleggende for eksistensen av datamaskiner, virker det merkelig at vi aldri har taklet emnet før - så i dag tenkte jeg at jeg ville gi en kort oversikt over hvilket binært ... Les mer .

En kompilator vil da oversette språk på høyt nivå til en binær fil som en kjørbar. Denne binære filen er hva du utfører for å starte applikasjonen. Nå er dette et veldig høyt syn på hva som skjer, men husk at datamaskinen trenger et oversettelseslag mellom hva du forteller det å gjøre og hvordan det kan forstå det.

Et skall er det som kalles tolk. På samme måte som en kompilator, oversetter en tolk menneskekoden til maskinkode. En av forskjellene er at en tolk gjør dette en uttalelse om gangen i motsetning til en kompilator som skanner hele programmet og oversetter det som helhet til maskinkode.

Skallet er da et grensesnitt for at du kan kommunisere med operativsystemet (OS). Når du skriver kommandoer inn i skallet ditt, er skallet ansvarlig for å tolke disse kommandoene og gjøre magien skje. Operasjoner som kopiering av filer, rør, oppføringsfiler er alle innenfor et skalls oppgave. Det er også ansvarlig for å huske kommandoprofilen din for å sjekke hva som gikk gjennom hodet ditt på en tid med mulig innbrudd.

For å finne ut alle skallene som er tilgjengelige på systemet, åpne terminal og skriv inn:

katt / etc / skall

For å finne ut hvilket skall du bruker for øyeblikket, type:

ekko $ 0

1. Bash

Med en kilometer, det mest populære skallet blant Linux-brukere. Det er vanskelig å til og med tenke på skall uten at Bourne-Again Shell (bash) er en del av ligningen. Mange Linux-distribusjoner leveres med bash som standardskall fordi bash er standard GNU-skallet. Utgitt i 1989, har det også noen tiår med en sunn utvikling bak den.

Bashs forgjenger er Bourne Shell (sh) som er et av de originale Unix-skallene. En attraktiv funksjon for å programmere var at de kunne portere sine skript. Hva er Shell Scripting og hvorfor du bør bruke det Hva er Shell Scripting og hvorfor du bør bruke det I tillegg til å kunne akseptere og utføre kommandoer interaktivt, kan skallet også Kjør kommandoer som er lagret i en fil. Dette er kjent som shell scripting. Her dekker vi grunnleggende om shell scripting. Les mer direkte til bash helt uendret. Bash tilbyr også flere forbedringer til sin forgjenger som kommandoen fullføring og kommandoprogram.

Bash er et perfekt respektabelt skall, og ofte vil online dokumentasjon utelukkende anta at du bruker den. Men bash er ikke uten sine mangler - som alle som noensinne har skrevet en bash script som spenner over noen linjer kan attestere til! Det er ikke at du ikke kan gjøre noe, det er at det ikke alltid er spesielt elegant å lese og skrive. Bash er sannsynligvis her for å være i nær fremtid. Den kan skryte av en omfattende installasjonsbase og brigader av uformelle og profesjonelle brukere, som allerede er vant til bruken av det, og quirks.

2. KornShell

KornShell er kjent som ksh, og er et alternativt skall som stammer fra Bell Labs på 1980-tallet. Ksh begynte sitt liv som proprietær programvare, å være de facto standard på kommersielle enheter og var derfor ikke tilgjengelig for Linux frem til 2000. Det er ikke mange forskjeller mellom bash og ksh, men hver har mindre fordeler over den andre. Ksh har for eksempel CDen den gamle nye kommandoen. Hvis du var i katalogen / Downloads / foo / bar /en/ foobar og du trengte å komme til / Downloads / foo / bar /to/ foobar du trenger bare å kjøre:

cd en to


Veteraner av ksh vil forkaste det overlegenhet ved å nevne skriptfordelene. Disse inkluderer blant annet å ha en bedre loop syntaks, mer naturlige måter å gjenta kommandoer, og de knapt brukte, assosiative arrayer. For grunnleggende input bash er ganske lik ksh for avansert skripting, men dette er sikkert å være en annen opplevelse. En annen ting å være oppmerksom på, er å be om hjelp til ksh på nettet. Dette kan innebære å våkne en grizzled avansert bruker fra hans søvn for å hjelpe deg. I forhold til bash, som vil få deg en flurry av svar nesten umiddelbart!

Hvis du vil gi ksh en prøve, kan du skrive:

sudo apt installer ksh ksh

3. Tcsh

Tcsh kan spore røttene tilbake til Unixs tidlige dager. Det er i hovedsak C-shellet (csh) med programmerbar kommandolinjefylling, kommandolinjearbeid, og noen andre funksjoner. Tcsh er standardskallet for BSD-baserte systemer som FreeBSD. Det store salgsargumentet for tcsh er dets skriptspråk, som bør se veldig kjent for alle som har programmert i C. Tcsh er en verdig kandidat for å lære om du finner deg selv primært programmering i C Hvorfor C Programmering er fortsatt verdt å lære, hvorfor C Programmering er Fortsatt verdt å lære C er ikke et dødt språk. Faktisk rangert IEEE Spectrum Magazine som nr. 2 toppspråk i 2017. Her er fem grunner til hvorfor. Les mer . Dette gjør tcsh nyttig for prototyping av små C-programmer uten å bli forvirret over ting som braketter du bruker. Dette problemet har en tendens til å skje hvis du kontinuerlig bytter mellom C programmering og shell scripting.

Tcshs skripting er elsket av noen og avskyet av andre. Men det har også andre funksjoner, inkludert å legge til argumenter for aliaser, og forskjellige standardinnstillinger som kan appellere til dine preferanser. En av de viktigste funksjonene inkluderer måten automatisk fullføring med og historie ferdigstillingsarbeid. Etter å ha tatt opp historien din ved å skrive historie. Tcsh vil vise en nummerert liste over tidligere kommandoer, med et veldig praktisk tidsstempel. Du kan kjøre en kommando ved å skrive !n erstatter n med tilhørende nummer i den viste historien. Ferdiggjøring av historikkfane i tcsh virker ved å skrive:

!en

Dette utvides til den siste kommandoen som begynte med brevet “en”. Tilsvarende, i bash, må du skrive !a: p å først se kommandoen, etterfulgt av !! å utføre det.

For å gi tcsh en prøve, skriv:

sudo apt install tcsh tcsh

4. Fisk

Blant all seriøsiteten av Linux har teamet på fisk innebygd en sans for humor i prosjektet. På deres nettside leser tungen-i-kinnet tittelen “Til slutt, en kommandolinje skaller for 90-tallet” - fisk (“friendly Jegnteractive shell”) ble utviklet i 2005. Utover spioneringen “Glorious VGA Color,” er noen forbedringer over andre skall. Kommandoer som har en ugyldig syntaks, vises som rød og korrekt syntaks i blått. I tillegg er det overdådige sett med fanekompletter som fargekodede, automatisk komplette forslag som er basert på historien din.

Fisken kan også skryte av kommandoen på grunnlag av man-sidene på maskinen. Hvordan kutte mantsider til lesbare forklaringer på Linux og macOS. Hvordan kutte mantsider til lesbare forklaringer på Linux og MacOS. MacOS og Linux har hver en nyttig kommando, "mann" som viser manuelle forklaringer for terminalkommandoer. Da de ofte er lange, hvorfor ikke bruk tldr-verktøyet for å forkorte dem til lesbare biter? Les mer . Så hvis du nettopp har installert et nytt program og trenger å bli vant til sin syntaks, vil fisken gripe syntaxen fra mannsiden og legge den til dine auto-komplette forslag. Ryddig! Hvis du vil bli mer kjent med kommandolinjen, kan fisk være et flott sted å starte.

For å prøve hvilken fisk som handler om, skriv:

sudo apt installere fisk fisk

5. Z Shell

Mange ville vurdere dette for å forlate det beste skallet for sist, som ville være helt forståelig. Zsh har likheter med bash og ksh og inkorporerer mange av funksjonene som finnes i dem, så vel som tcsh. Noen nyttige funksjoner i zsh inkluderer en navigerbar autofullføringsliste. I motsetning til bash som bare viser alle tilgjengelige kommandoer og får deg til å skrive den manuelt. Globbing i zsh er uforklarlig nyttig. Typing:

vim / u / l / b / a

Åpner filen automatisk:

/usr/local/bin/autoupdate.sh

Stavekorrigering i zsh er langt bedre enn den for bash. I en cd Command Bash kan korrigere opptil ett tegn. Zsh, derimot, kan konfigureres til å autokorreisere 10 stavefeil i ett ord. Zsh også negler kommandolinjehistorier. Dette er ekstremt nyttig for brukere som bruker for mye tid på terminalen. Zsh deler magisk historier på tvers av terminaler, noe som gjør multi-terminale økter til en bris.

Zsh kan ta litt tid å konfigurere ved første gangs bruk hvis du ikke går med standardkonfigurasjonen. For å prøve det, skriv inn:

sudo apt install zsh zsh

Hvilken Shell er for meg?

Det faktum at disse alternativene er tilgjengelige er strålende. De er glimt i historien om å beregne seg selv, der programmererne bestemte seg for at de ønsket å gjøre ting sin egen måte, og til slutt sette dem fri for verden.

De betydelige forskjellene mellom disse skjellene finnes i skriptekstaxen. Hvert skall har et spesielt sett med nyanser som skiller dem fra hverandre. Som det dominerer, domhinner bash når det gjelder markedsandeler, noe som gjør det enklere å finne hjelp. Bash er rett og slett den beste allrounden, som tilfredsstiller alle de mest avanserte brukerne.

Hvilket skall bruker du for øyeblikket? Har du prøvd noe annet shell enn bash? Hva elsker du eller hater om ditt nåværende skall? Del dine tanker i kommentarene nedenfor!

Bilde Kreditt: Spaxiax / Depositphotos

Utforsk mer om: Linux Bash Shell.