
Edmund Richardson
0
4315
193
Er du glad for at bruge bash shell i Linux? Eller foretrækker du at prøve et alternativ? Der er tsch, fisk, KornShell og Z Shell at vælge imellem. Men hvilken af disse Linux-skaller er bedst?
Hvad er en skal?
Normalt, når du skriver en applikation, gøres det på et højt niveau sprog, som mennesker kan forstå. Eksempler på disse er C #, Java, C ++ osv. Tro det eller ej, din computer ser alt som 1s som 0s eller, som almindeligt kendt, binær eller maskinkode Hvad er binært? [Teknologi forklaret] Hvad er binært? [Teknologi forklaret] I betragtning af at binære er så absolut grundlæggende for eksistensen af computere, synes det underligt, at vi aldrig har behandlet emnet før - så i dag troede jeg, at jeg ville give et kort overblik over, hvad binært ... .
En kompilator oversætter derefter sprog på højt niveau til en binær fil som en eksekverbar. Denne binære fil er det, du udfører for at starte nævnte applikation. Nu er dette et meget højt niveau af, hvad der sker, men bare husk, din computer har brug for et oversættelseslag mellem det, du fortæller det at gøre, og hvordan den kan forstå det.
En skal er det, der er kendt som en tolk. På samme måde som en compiler oversætter en tolk den menneskelige kode til maskinkode. En af forskellene er, at en tolk gør denne udsagn ad gangen i modsætning til en compiler, der scanner hele programmet og oversætter det som en helhed til maskinkode..
Skallen er derefter en grænseflade, hvor du kan interagere med dit operativsystem (OS). Når du skriver kommandoer i dit shell, er skallen ansvarlig for at fortolke disse kommandoer og få magien til at ske. Funktioner som kopiering af filer, rørsystemer, liste af filer er alle inden for et shell's opgaver. Det er også ansvarligt for at huske din kommandohistorie for at kontrollere, hvad der gik gennem dit hoved på et tidspunkt med mulig inebriation.
For at finde ud af alle de skaller, der er tilgængelige på dit system, skal du åbne terminal og skrive:
kat / etc / skaller
Sådan finder du ud af, hvilken skal du bruger i øjeblikket type:
gentager $ 0
1. Bash
Efter en kilometer er det mest populære shell blandt Linux-brugere. Det er svært at overveje skaller uden at Bourne-Again SHELL (bash) er en del af ligningen. Mange Linux-distributioner sendes med bash som standard shell, fordi bash er standard GNU shell. Den blev udgivet i 1989 og kan også prale af et par årtier med sund udvikling bag sig.
Bashs forgænger er The Bourne Shell (sh), som er en af de originale Unix-skaller. Et attraktivt træk for sh-programmører var, at de kunne porte deres shripts Hvad er Shell-scripting og hvorfor du skal bruge det Hvad er Shell-scripting og hvorfor du skal bruge det Ud over at være i stand til at acceptere og udføre kommandoer interaktivt kan shell også udføre kommandoer, der er gemt i en fil. Dette er kendt som shell-scripting. Her dækker vi det grundlæggende i shell-scripting. direkte til bash helt uændret. Bash tilbyder også flere forbedringer til sin forgænger, såsom kommandoafslutning og kommandohistorie.
Bash er en perfekt respektabel shell, og ofte antager onlinedokumentation altid, at du bruger den. Bash er dog ikke uden dets mangler - som enhver, der nogensinde har skrevet et bash-script, der spænder over et par linjer, kan attestere! Det er ikke det, at du ikke kan gøre noget, det er at det ikke altid er særlig elegant at læse og skrive. Bash er sandsynligvis her for at blive i det mindste i den nærmeste fremtid. Det kan prale af en omfattende installationsbase og brigader af både afslappede og professionelle brugere, der allerede er vant til brugen af dem, og quirks.
2. KornShell
Almindeligt kendt som ksh, er KornShell en alternativ skal, der stammer fra Bell Labs i 1980'erne. Ksh begyndte sit liv som proprietær software, idet han var den de facto standard på kommercielle enheder og var derfor ikke tilgængelig for Linux før i 2000. Der er ikke mange forskelle mellem bash og ksh, men hver har mindre fordele i forhold til den anden. Ksh har for eksempel cd den gamle nye kommando. Hvis du var i biblioteket / Downloads / foo / bar /en/ foobar og du var nødt til at komme til / Downloads / foo / bar /to/ foobar du skal bare køre:
cd en to
Veteraner fra ksh vil gå ind for dets overlegenhed ved at nævne dets fordele ved scripting. Disse inkluderer at have en bedre loop-syntaks, mere naturlige måder at gentage kommandoer og de knapt anvendte, associerende arrays. For grundlæggende input bash er meget lig ksh for avanceret scripting, men dette er helt sikkert en anden oplevelse. En anden ting at være opmærksom på er at anmode om hjælp til ksh online. Dette kan omfatte at vække en grizzled avanceret bruger fra hans slummer for at hjælpe dig. I forhold til bash, som får dig et uheld med svar næsten øjeblikkeligt!
Hvis du vil prøve ksh, kan du indtaste:
sudo apt install ksh ksh
3. Tcsh
Tcsh kan spore sine rødder tilbage til de tidlige dage af Unix. Det er i det væsentlige C-shell (csh) med programmerbar kommandolinjefærdiggørelse, kommandolinjebearbejdning og et par andre funktioner. Tcsh er standardskallen til BSD-baserede systemer som FreeBSD. Det store salgsargument for tcsh er dets skriftsprog, som burde se meget velkendt ud for alle, der har programmeret i C. Tcsh er en værdig kandidat til at lære, hvis du først og fremmest programmerer dig i C Hvorfor C-programmering er stadig værd at lære hvorfor C-programmering er Stadig værd at lære C er ikke et dødt sprog. Faktisk rangerede IEEE Spectrum magasin som det topsprog nr. 2 i 2017. Her er fem grunde til. . Dette gør tcsh nyttigt til prototype små C-programmer uden at blive forvirret over ting som hvilke parenteser du bruger. Dette problem har en tendens til at ske, hvis du konstant skifter mellem C-programmering og shell-scripting.
Tcshs scripting er elsket af nogle og afsky af andre. Men det har også andre funktioner, herunder tilføjelse af argumenter til aliaser og forskellige standarder, der muligvis appellerer til dine præferencer. En af dens vigtige funktioner inkluderer den måde, auto-færdiggørelse og historien er færdig med. Efter at have trukket din historie op ved at skrive historie. Tcsh viser en nummereret liste over dine tidligere kommandoer med et meget praktisk tidsstempel. Du kan køre en hvilken som helst kommando ved at skrive !n erstatter n med dets tilsvarende nummer i den viste historie. Historik-fanen er afsluttet i tcsh-værker ved at skrive:
!-en
Dette udvides til den sidste kommando, der startede med brevet “-en”. Forholdsmæssigt skal du skrive i bash !a: p for først at se kommandoen, efterfulgt af !! at udføre det.
For at prøve tcsh skal du indtaste:
sudo apt install tcsh tcsh
4. Fisk
Blandt al Linux's alvor har teamet ved fisk indlejret en sans for humor i deres projekt. På deres websted læser tungen-i-kind-titlen “Endelig et kommandolinieskal til 90'erne” - fisk (“friendly jegnteractive shell”) blev udviklet i 2005. Beyond the spioneret “Herlig VGA-farve,” er nogle forbedringer i forhold til andre skaller. Kommandoer, der har en ugyldig syntaks, vises som rød og korrigerer syntaks i blåt. Der er desuden overdådige sæt faneudfyldninger som farvekodede auto-komplette forslag, der er baseret på din historie.
Fish kan også prale af færdiggørelse af kommandoer baseret på mandsiderne på din maskine Sådan afkortes man-sider til læsbare forklaringer på Linux og macOS Sådan afkortes mand-sider til læsbare forklaringer på Linux og macOS MacOS og Linux har hver en nyttig kommando, "mand", som viser manuelle forklaringer til terminalkommandoer. Da de ofte er lange, hvorfor ikke bruge tldr-værktøjet til at forkorte dem til læsbare bidder? . Så hvis du lige har installeret et nyt program og har brug for at vænne sig til dets syntaks, vil fisk gribe syntaksen fra man-siden og tilføje det til dine auto-komplette forslag. Neat! Hvis du gerne vil blive mere fortrolig med kommandolinjen, kan fisk være et godt sted at starte.
For at prøve, hvad fisk handler om, skal du skrive:
sudo apt installere fisk
5. Z Shell
Mange ville overveje at dette forlader det bedste shell til sidst, hvilket ville være helt forståeligt. Zsh har ligheder med bash og ksh og inkorporerer mange af de funktioner, der findes i dem såvel som tcsh. Nogle nyttige funktioner i zsh inkluderer en navigerbar liste over autofuldførelser. I modsætning til bash, der blot viser alle tilgængelige kommandoer og får dig til at skrive det manuelt. At kløbe i zsh er uforklarligt nyttigt. Indtastning:
vim / u / l / b / a
Åbner filen automatisk:
/usr/local/bin/autoupdate.sh
Stavekorrektion i zsh er langt bedre end bash. I en cd kommando bash kan korrigere op til et tegn. Zsh, på den anden side, kan konfigureres til autokorrektion af 10 stavefejl i et ord. Zsh negler også kommandolinjens historie. Dette er yderst nyttigt for brugere, der bruger store mængder tid på terminalen. Zsh deler magisk historier på tværs af terminaler, hvilket gør multi-terminalsessioner til en leg.
Zsh kan tage et stykke tid at konfigurere ved første brug, hvis du ikke går med standardkonfigurationen. For at prøve det, skal du indtaste:
sudo apt installere zsh zsh
Hvilken skal er for mig?
At disse muligheder er tilgængelige, er strålende. De får et glimt af selve computingens historie, hvor programmerere besluttede, at de ville gøre tingene deres egen måde, og til sidst frigive dem til verden.
De væsentlige forskelle mellem disse skaller findes i script-syntaks. Hver skal har et bestemt sæt nuancer, der adskiller dem fra hinanden. Som det står, dominerer bash med hensyn til markedsandel, hvilket gør hjælp til hjælp meget lettere. Bash er simpelthen den bedste allrounder, der imødekommer alle behov undtagen de mest avancerede brugere.
Hvilken skal bruger du i øjeblikket? Har du prøvet noget andet skal end bash? Hvad elsker eller hader du ved dit nuværende shell? Del dine tanker i kommentarerne herunder!
Billedkredit: spaxiax / Depositphotos