Bash, eller Bourne Again Shell, är vad som förinstalleras på de flesta Linux distros. Det är dock inte det enda skalet där ute. Det finns flera andra att prova. Här är sex alternativa skal som kan ersätta bash. Var och en har sina fördelar och nackdelar, så du måste prova dem och se vilken som är bäst för dig.

1. sh (eller Bourne Shell)

Bourne skalet, uppkallat efter sin skapare Stephen Bourne, var en av de första skalen någonsin. Du kan säga att den användes som utgångspunkt för vilken Bash skapas. Ibland förvirrar användarna båda och tror att de är desamma medan de inte är det. Det är sant att många .sh-skript kommer att köras på Bash också, för Bash innehåller mycket från Sh, men motsatsen är inte sant.

Du kan tänka på Sh som föregångare till Bash. Det har inte så många funktioner, men det är mer standardiserat än Bash.

2. Dash

Dash är i huvudsak Bash på Debian-system. Om du kör en Debian-baserad distro är risken att du kör Dash, inte Bash. På grund av komplexiteten att använda Dash som standardskal, bestämde Ubuntu (en Debian-baserad distro) att använda Bash för interaktiva skript, inte Dash som standardskal.

Dash saknar många av funktionerna i Bash, till exempel flikavslutning och kommandohistorik, men det är snabbare och mycket mindre i storlek (100K jämfört med 900K), vilket är en faktor om du kör den på en så kraftfull dator.

3. csh (eller C Shell)

C och C ++ programmeringsspråk var ganska populära, och stora delar av Linux själv är skrivna i dem. Det är därför inte förvånande att det finns ett skal - C Shell eller Csh - som använder C-syntaxmodellen. Om du är flytande i C, kommer det här skalet vara naturligt för dig.

Csh-skalet hade dock ganska många fel och inte många funktioner. Därför kom Tcsh-skalet till scenen. Tcsh fixade de flesta buggarna och lade till nya funktioner, till exempel kommandotillverkning, jobbkontroll, stavningskorrigering etc. Tyvärr är Tcsh och Bash mycket olika, vilket innebär att du inte kan köra Bash-skript i Tcsh och vice versa.

4. ksh (eller Korn Shell)

Ksh eller Kornskalet (uppkallat efter sin skapare David Korn) introducerades ungefär samtidigt som Tcsh, men till skillnad från Tcsh är det kompatibelt med Sh och Bash. Det var ett AT & T proprietärt skal fram till 2000, och det var därför det blev inte så populärt. Ksh lägger till fler funktioner till Sh, såsom flytande punkträkning, jobbkontroll, kommandoaliasering och kommandotillverkning.

5. zsh (eller Z Shell)

Skålen som hittills hittades skapades mestadels 1970. Datorer har gått långt sedan, och detta kräver även nya skal. En av de populära nya skalen är Z-skalet, eller Zsh. Det skapades av Paul Falstad 1990.

Den har funktionerna i Bash och några fler, till exempel startfiler, inloggning / loggning och inbyggda programmeringsfunktioner som bytecode, stöd för vetenskaplig notation i syntax, flytande punkträkning, slutkommentarer, koncept, variabel, funktioner, och nyckelindex. Om du letar efter ett mer avancerat skal, prova Z-skalet.

6. Fisk

Sökandet efter mer moderna skal slutade inte med fisken. Det nya århundradet såg nya skal, till exempel Fish (eller Friendly Interactive Shell). Det släpptes 2005 och bygger inte på Sh-skalet. Dess främsta aspekt är att den har en unik kommandoradssyntax som är utformad för att vara nybörjarevänlig. Det har också några coola funktioner, till exempel automatisk förslag, val med piltangenterna, stöds av X Urklipp, 256 terminalfärger etc.

Den största nackdelen med fisk är att den är väldigt annorlunda än Bash och andra Bourne-baserade skal. Som ett resultat kan du inte portkod (och kunskap) från Fish to Bash och Sh.

Så vilket skal är det bästa? Tyvärr kan denna fråga inte besvaras. Alla har sina fördelar och nackdelar, och det beror verkligen på vad du behöver det för. Men nu att du känner till fördelarna och nackdelarna med vart och ett av de sex alternativa skalen, blir det lättare för dig att bestämma i vilken situation vilket skal du ska använda. Men trots allt är detta val i stort sett en fråga om personliga preferenser - jag håller mig själv med Bash, och jag mår bra med det. Bash är standardskalet för en anledning du vet!