Annonse
Lykkelig med å bruke bash shell i Linux? Eller foretrekker du å prøve ut et alternativ? Det er tsch, fisk, KornShell og Z Shell å velge mellom. Men hvilke av disse Linux-skjellene er best?
Hva er et skall?
Når du skriver en applikasjon, blir det vanligvis gjort på et høyt nivå språk som mennesker kan forstå. Eksempler på disse er C #, Java, C ++, etc. Tro det eller ei, datamaskinen din ser alt på 1 som 0 eller som kjent, binær- eller maskinkode Hva er binær? [Teknologi forklart]Gitt at binær er så absolutt grunnleggende for datamaskinens eksistens, virker det rart at vi aldri har taklet temaet før - så i dag hadde jeg trodd at jeg ville gi en kort oversikt over hva binær ... Les mer .
En kompilator vil deretter oversette høynivåspråket til en binær fil som en kjørbar. Denne binære filen er det du kjører for å starte nevnte applikasjon. Nå er dette et veldig høyt nivå av hva som skjer, men husk at datamaskinen din trenger et oversettelseslag mellom det du forteller den skal gjøre og hvordan den kan forstå det.
Et skall er det som er kjent som en tolk. På samme måte som en kompilator, oversetter en tolk den menneskelige koden til maskinkode. En av forskjellene er at en tolk gjør dette utsagnet om gangen i motsetning til en kompilator som skanner hele programmet og oversetter det som en helhet til maskinkode.
Skallet er da et grensesnitt for deg å samhandle med operativsystemet ditt (OS). Når du skriver kommandoer i skallet ditt, er skallet ansvarlig for å tolke disse kommandoene og få magien til å skje. Operasjoner som kopiering av filer, rørsystemer, liste over filer er alle innenfor et skall. Det er også ansvarlig for å huske kommandologgen din for å sjekke hva som gikk gjennom hodet ditt på et tidspunkt med mulig inebriation.
For å finne ut alle skjellene som er tilgjengelige på systemet ditt, åpner du terminal og skriver:
katt / etc / skjell
Slik finner du ut hvilket skall du bruker for øyeblikket:
ekko $ 0
1. bash
Om en mil, det mest populære skallet blant Linux-brukere. Det er vanskelig å tenke på skjell uten at Bourne-Again-skallet (bash) er en del av ligningen. Mange Linux-distribusjoner leveres med bash som standardskall fordi bash er standard GNU-skall. Den ble utgitt i 1989 og kan skilte med noen tiår med sunn utvikling bak seg.
Bashs forgjenger er The Bourne Shell (sh) som er en av de originale Unix-skjellene. En attraktiv egenskap for sh-programmerere var at de kunne port sine skript Hva er skjellscripting og hvorfor du bør bruke detI tillegg til å kunne akseptere og utføre kommandoer interaktivt, kan skallet også utføre kommandoer som er lagret i en fil. Dette er kjent som shell scripting. Her dekker vi det grunnleggende om shell-scripting. Les mer direkte til bash helt uendret. Bash tilbyr også flere forbedringer til forgjengeren, for eksempel fullføring av kommando og kommandohistorikk.
Bash er et perfekt respektabelt skall, og ofte vil online dokumentasjon alltid anta at du bruker det. Bash er imidlertid ikke uten dets mangler - som alle som noen gang har skrevet et bash-manus som spenner over noen få linjer kan bevitne! Det er ikke det at du ikke kan gjøre noe, det er at det ikke alltid er spesielt elegant å lese og skrive. Bash er sannsynligvis her for å bli i den minste fremtid. Det kan skryte av en omfattende installasjonsbase og brigader av både tilfeldige og profesjonelle brukere, som allerede er vant til bruken, og quirks.
2. KornShell
Vanligvis kjent som ksh, er KornShell et alternativt skall som oppstod fra Bell Labs på 1980-tallet. Ksh begynte livet som egenutviklet programvare, å være den de facto standard på kommersielle enheter og var derfor ikke tilgjengelig for Linux før i 2000. Det er ikke mange forskjeller mellom bash og ksh, men hver har mindre fordeler i forhold til den andre. Ksh har for eksempel cd-en gammel ny kommando. Hvis du var i katalogen /Downloads/foo/bar/en/foobar og du trengte å komme til /Downloads/foo/bar/to/foobar du trenger bare å løpe:
cd en to
Veteraner fra ksh vil gå inn for dets overlegenhet ved å nevne skriptfordelene. Disse inkluderer å ha en bedre syntaks av sløyfen, mer naturlige måter å gjenta kommandoer på, og de knapt brukte, assosiative matriser. For grunnleggende input bash er ganske lik ksh for avansert scripting, men dette er sikkert en annen opplevelse. En annen ting å være oppmerksom på er å be om hjelp til ksh online. Dette kan innebære å vekke en grizzled avansert bruker fra søvnen sin for å hjelpe deg. Relativt til bash, som vil gi deg en mengde svar nesten umiddelbart!
Hvis du vil prøve ksh, kan du skrive:
sudo apt install ksh. ksh
3. tcsh
Tcsh kan spore sine røtter tilbake til de første dagene av Unix. Det er egentlig C-skallet (csh) med programmerbar kommandolinjefullføring, kommandolinjebehandling og noen få andre funksjoner. Tcsh er standardskallet for BSD-baserte systemer som FreeBSD. Det store salgsargumentet for tcsh er skriptspråket, som skal se veldig kjent ut for alle som har programmert i C. Tcsh er en verdig kandidat til læring hvis du først og fremst befinner deg programmering i C Hvorfor C-programmering fortsatt er verdt å læreC er ikke et dødt språk. Faktisk rangerte IEEE Spectrum magasinet som toppspråket nr. 2 i 2017. Her er fem grunner. Les mer . Dette gjør tcsh nyttig for å prototype små C-programmer uten å bli forvirret over ting som hvilke parenteser du bruker. Dette problemet har en tendens til å skje hvis du kontinuerlig bytter mellom C-programmering og shell-scripting.
Tcshs skripting blir beundret av noen og avsky av andre. Men det har andre funksjoner også, inkludert å legge til argumenter til aliaser og forskjellige standarder som kan appellere til dine preferanser. En av dens viktige funksjoner inkluderer måten automatisk fullføring med
!en
Dette utvides til den siste kommandoen som startet med bokstaven “a”. Sammenlignende, i bash, må du skrive ! a: p å først se kommandoen, etterfulgt av !! å utføre det.
For å prøve tcsh, skriv:
sudo apt install tcsh. tcsh
4. Fisk
Blant all seriøsiteten til Linux har teamet på fish lagt inn en sans for humor i prosjektet sitt. På nettstedet deres lyder tungen-i-kinnetittelen "Endelig et kommandolinjeskall for 90-tallet" - fisk ("friendly Jegnteractive shell ”) ble utviklet i 2005. Utover den spionerte “Glorious VGA Color”, er noen forbedringer i forhold til andre skjell. Kommandoer som har en ugyldig syntaks vises som rød og korrigerer syntaks i blått. I tillegg er det overdådige sett med fanearbeidinger som fargekodede auto-komplette forslag som er basert på historikken din.
Fish har også fullført kommando basert på mann sider på maskinen din Hvordan forkorte mannsider til lesbare forklaringer på Linux og macOSMacOS og Linux har hver en nyttig kommando, "man" som viser manuelle forklaringer for terminalkommandoer. Siden de ofte er lange, hvorfor ikke bruke tldr-verktøyet til å forkorte dem til lesbare biter? Les mer . Så hvis du nettopp har installert et nytt program og trenger å bli vant til syntaks, vil fisk ta tak i syntaks fra mansiden og legge det 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 hva fisk handler om, skriver du inn:
sudo apt install fisk. fisk
5. Z Shell
Mange vil anse dette for å forlate det beste skallet til sist, noe som ville være helt forståelig. Zsh har likheter med bash og ksh og inneholder mange av funksjonene som finnes i dem så vel som tcsh. Noen nyttige funksjoner i zsh inkluderer en navigerbar liste over autofullføringer. I motsetning til bash som bare viser alle tilgjengelige kommandoer og får deg til å skrive det manuelt. Å klø 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 bash. I en cd kommandobas kan korrigere opptil ett tegn. Zsh, derimot, kan konfigureres til å autokorrigere 10 stavefeil i ett ord. Zsh spikrer også kommandolinjens historier. Dette er ekstremt nyttig for brukere som bruker store mengder tid på terminalen. Zsh deler magisk historier på tvers av terminaler, noe som gjør multiterminal økter til en lek.
Zsh kan ta en stund å konfigurere ved første bruk hvis du ikke følger standardkonfigurasjonen. For å prøve det, skriv inn:
sudo apt install zsh. zsh
Hvilken skall er for meg?
At disse alternativene er tilgjengelige, er strålende. De får et glimt av selve databehandlingshistorien, der programmerere bestemte seg for at de ville gjøre ting til sin egen måte, og til slutt sette dem fri til verden.
De vesentlige forskjellene mellom disse skjellene finner du i scripting-syntaks. Hvert skall har et bestemt sett med nyanser som skiller dem fra hverandre. Slik det står, dominerer bash når det gjelder markedsandel, noe som gjør hjelpen til å bli mye enklere. Bash er ganske enkelt den beste allrounderen, og dekker behovene til alle unntatt de mest avanserte brukerne.
Hvilket skall bruker du for øyeblikket? Har du prøvd noe annet skall enn bash? Hva elsker eller hater du om ditt nåværende skall? Del tankene dine i kommentarene nedenfor!
Bildekreditt: spaxiax /Depositphotos
Yusuf ønsker å leve i en verden fylt med innovative bedrifter, smarttelefoner som leveres med mørk stekt kaffe og datamaskiner som har hydrofobe kraftfelt som i tillegg avviser støv. Som forretningsanalytiker og utdannet ved Durban University of Technology, med over 10 års erfaring i en raskt voksende teknologibransje, liker han å være den midterste mannen mellom...