Annons
Lycklig med att använda bash shell i Linux? Eller vill du prova ett alternativ? Det finns tsch, fisk, KornShell och Z Shell att välja mellan. Men vilka av dessa Linux-skal är bäst?
Vad är en skal?
Vanligtvis, när du skriver en applikation, görs det på ett språk på hög nivå som människor kan förstå. Exempel på dessa är C #, Java, C ++, etc. Tro det eller inte, din dator ser allt som 1s som 0s eller, som vanligt känt, binär eller maskinkod Vad är binärt? [Teknisk förklaring]Med tanke på att binär är så absolut grundläggande för att det finns datorer, verkar det konstigt att vi aldrig har behandlat ämnet förut - så idag trodde jag att jag skulle ge en kort överblick över vilken binär ... Läs mer .
En kompilator översätter sedan högnivåspråket till en binär fil som en körbar. Denna binära fil är vad du kör för att starta nämnda applikation. Nu är det en mycket hög nivå av vad som händer, men kom ihåg att din dator behöver ett översättningslager mellan vad du säger att göra och hur den kan förstå det.
Ett skal är det som kallas tolk. På samma sätt som en kompilator översätter en tolk den mänskliga koden till maskinkod. En av skillnaderna är att en tolk gör detta uttalande åt gången i motsats till en kompilator som skannar hela programmet och översätter det som en helhet till maskinkod.
Skalet är då ett gränssnitt för dig att interagera med ditt operativsystem (OS). När du skriver kommandon i ditt skal ansvarar skalet för att tolka dessa kommandon och få magin att hända. Åtgärder som kopiering av filer, piping, listning av filer ligger alla inom ett skal. Det är också ansvarigt för att komma ihåg din kommandohistorik för att kontrollera vad som gick igenom ditt huvud vid en tidpunkt av möjlig inebriation.
För att ta reda på alla skal som finns tillgängliga på ditt system, öppna terminal och skriv:
katt / etc / skal
För att ta reda på vilket skal du för närvarande använder:
echo $ 0
1. Våldsamt slag
En mil är det mest populära skalet bland Linux-användare. Det är svårt att ens tänka på skal utan att Bourne-Again-skalet (bash) är en del av ekvationen. Många Linux-distributioner skickas med bash som standardshell eftersom bash är standard GNU-skalet. Den släpptes 1989 och har också några decennier av sund utveckling bakom sig.
Bashs föregångare är The Bourne Shell (sh) som är en av de ursprungliga Unix-skalen. En attraktiv egenskap för sh-programmerare var att de kunde hamnar sina skript Vad är Shell Scripting och varför du ska använda detFörutom att kunna acceptera och köra kommandon interaktivt kan skalet också köra kommandon som är lagrade i en fil. Detta kallas shell-skript. Här täcker vi grunderna i skalskript. Läs mer direkt till bash helt oförändrat. Bash erbjuder också flera förbättringar av sin föregångare såsom kommandofyllnad och kommandohistorik.
Bash är ett perfekt respektabelt skal och ofta antar onlinedokumentation alltid att du använder det. Bash är dock inte utan sina brister - som alla som någonsin har skrivit ett bash-manus som sträcker sig över några rader kan vittna om! Det är inte så att du inte kan göra något, det är att det inte alltid är särskilt elegant att läsa och skriva. Bash är förmodligen här för att stanna åtminstone i en nära framtid. Det har en omfattande installationsbas och brigader av både avslappnade och professionella användare, som redan är vana vid dess användning och egendomar.
2. Kornshell
Vanligtvis känd som ksh, är KornShell ett alternativt skal som härstammar från Bell Labs på 1980-talet. Ksh började sitt liv som egenutvecklad programvara, som var den de facto standard på kommersiella enheter och var därför inte tillgänglig för Linux förrän 2000. Det finns inte många skillnader mellan bash och ksh, men var och en har mindre fördelar jämfört med den andra. Ksh har till exempel cd-numret nya kommando. Om du var i katalogen /Downloads/foo/bar/ett/foobar och du behövde komma till /Downloads/foo/bar/två/foobar du behöver bara springa:
cd en två
Veteraner från ksh kommer att förespråka dess överlägsenhet genom att nämna dess skriptfördelar. Dessa inkluderar inkluderande att ha en bättre loop-syntax, mer naturliga sätt att upprepa kommandon och de knappt använda, associerande matriserna. För grundläggande inmatning bash är ganska lik ksh för avancerad skriptning, men detta är säkert att vara en annan upplevelse. En annan sak att tänka på är att begära hjälp för ksh online. Det kan handla om att väcka en grizzled avancerad användare från hans slummer för att hjälpa dig. I förhållande till bash, vilket kommer att få dig en mängd svar nästan omedelbart!
Om du vill prova ksh kan du skriva:
sudo apt install ksh. ksh
3. tcsh
Tcsh kan spåra sina rötter tillbaka till de tidiga dagarna av Unix. Det är i huvudsak C-skalet (csh) med programmerbar kommandoradsavslutning, kommandoradsredigering och några andra funktioner. Tcsh är standardskal för BSD-baserade system som FreeBSD. Den stora försäljningspunkten för tcsh är skriptspråket, som borde se mycket bekant ut för alla som har programmerat i C. Tcsh är en värdig kandidat för att lära sig om du främst befinner dig programmering i C Varför C-programmering fortfarande är värt att lära sigC är inte ett dött språk. Faktum är att IEEE Spectrum magazine rankade det som toppspråket nr 2 under 2017. Här är fem skäl till varför. Läs mer . Detta gör tcsh användbart för att prototypa små C-program utan att bli förvirrad över saker som vilka parenteser du använder. Det här problemet tenderar att hända om du ständigt växlar mellan C-programmering och shell-skript.
Tcshs skript är älskat av vissa och avsky av andra. Men det har andra funktioner också, inklusive att lägga till argument till alias och olika standardvärden som kan tilltala dina preferenser. En av dess betydelsefulla funktioner inkluderar hur automatisk komplettering med
! a
Detta utvidgas till det sista kommandot som började med bokstaven "a". Relativt, i bash, skulle du behöva skriva ! a: p för att först se kommandot, följt av !! att utföra det.
För att prova tcsh, skriv:
sudo apt install tcsh. tcsh
4. Fisk
Bland allvar i Linux har teamet vid fiskar inbäddat en känsla för humor i sitt projekt. På deras hemsida står tungan-i-kind-titeln "Slutligen ett kommandoradsskal för 90-talet" - fisk ("friendly jagnteractive shell ”) utvecklades 2005. Utöver den utmärkta “Glorious VGA Color”, finns några förbättringar jämfört med andra skal. Kommandon som har en ogiltig syntax visas som röd och korrigerar syntaxen i blått. Dessutom finns det påkostade uppsättningar av flikavslutningar som färgkodade auto-kompletta förslag som är baserade på din historik.
Fisk kan också skryta med att kommandot är slutfört baserat på mansidor på din maskin Hur man förkortar mansidor till läsbara förklaringar på Linux och macOSMacOS och Linux har vardera ett användbart kommando, "man" som visar manuella förklaringar för terminalkommandon. Eftersom de ofta är långa, varför inte använda tldr-verktyget för att förkorta dem till läsbara bitar? Läs mer . Så om du just har installerat ett nytt program och behöver vänja dig vid syntaxen, kommer fisken att ta tag i syntaxen från mansidan och lägga till den i dina autofullständiga förslag. Propert! Om du vill bli mer bekant med kommandoraden kan fisk vara ett bra ställe att börja.
För att prova vad fisk handlar om skriver du:
sudo apt install fisk. fisk
5. Z Shell
Många anser att detta lämnar det bästa skalet för sist, vilket skulle vara helt förståeligt. Zsh har likheter med bash och ksh och innehåller många av de funktioner som finns i dem samt tcsh. Några användbara funktioner i zsh inkluderar en navigerbar lista över autofyllningar. Till skillnad från bash som bara listar alla tillgängliga kommandon och får dig att skriva det manuellt. Att klöva i zsh är oförklarligt användbart. Skriver:
vim / u / l / b / a
Öppnar filen automatiskt:
/usr/local/bin/autoupdate.sh
Stafkorrigering i zsh är mycket överlägsen den för bash. I en CD kommandot bash kan korrigera upp till ett tecken. Zsh, å andra sidan, kan konfigureras för att autokorrigera 10 stavfel i ett ord. Zsh spikar också kommandoradshistorier. Detta är oerhört användbart för användare som spenderar mycket tid på terminalen. Zsh delar magiskt historier över terminaler, vilket gör flera terminaler till en bris.
Zsh kan ta en stund att konfigurera vid första användningen om du inte går med standardkonfigurationen. För att prova, ange:
sudo apt install zsh. zsh
Vilken skal är för mig?
Det faktum att dessa alternativ är tillgängliga är lysande. De skymtar själva datorns historia, där programmerare beslutade att de ville göra saker till sitt eget sätt och så småningom frigöra dem till världen.
De väsentliga skillnaderna mellan dessa skal kan hittas i skriptsyntaxen. Varje skal har en speciell uppsättning av nyanser som skiljer dem från varandra. Som det ser ut dominerar bash när det gäller marknadsandelar, vilket gör att hjälpen blir mycket enklare. Bash är helt enkelt den bästa allroundaren och uppfyller behoven för alla utom de mest avancerade användarna.
Vilket skal använder du för närvarande? Har du provat något annat skal än bash? Vad älskar eller hatar du om ditt nuvarande skal? Dela dina tankar i kommentarerna nedan!
Bildkredit: spaxiax /Depositphotos
Yusuf vill leva i en värld fylld av innovativa företag, smartphones som levereras med mörkt rostkaffe och datorer som har hydrofoba kraftfält som dessutom avvisar damm. Som affärsanalytiker och examen från Durban University of Technology, med över 10 års erfarenhet i en snabbt växande teknikindustri, tycker han om att vara den mellersta mannen mellan...