Kommandotolk
Den här artikeln bör enligt ett förslag slås ihop med skalprogram (utan datum) (Diskussion) |
Kommandotolk, även skal, är det gränssnitt där en dators användare kan skriva in kommandon. Det program som används som kommandotolk kan oftast även användas för att köra enkla program, så kallade skript.
Vid ett kommandoskal finns ofta en så kallad prompt. Prompten är ett ensamt tecken, eller en följd av tecken, i början av raden som visar att datorn är redo att ta emot ett nytt kommando.
Utseendet på prompten kan ställas in efter behov och önskemål. En vanliga inställning är att prompten visar vilken katalog man befinner sig i.
Ett skal kan också ha inbyggda kommandon som bara kan nås från just det skalet. Man kan även skapa egna kommandon eller variabler som gäller enbart i det aktuella skalet.
I de flesta skal är rör (pipes) av central betydelse. Ett rör används för att sammankoppla två eller flera program så att utdata från ett program blir indata till nästa. På detta sätt kan många små, enkla program sammankopplas till att lösa komplicerade problem.
Några exempel
Unix
I Unix finns flera olika kommandotolkar att välja mellan. (Du kan få reda på vilken du använder genom att skriva echo $SHELL i terminalfönstret.) Några av de vanligaste är:
- sh, Bourne shell är det äldsta skalet. Det är standard i UNIX System V och används fortfarande av många när de skriver script.
- bash, Bourne again shell är, som namnet antyder, en förbättring av sh. Det är standard i GNU/Linux, och på senare tid även MacOS X.
- csh Sea-shell (Berkeley UNIX C shell). Det är standard i BSD och använder en syntax liknande den i programmeringsspråket C.
- tcsh Tea-Sea shell, är standard i SunOS/Solaris och FreeBSD. Det är en något utökad variant av csh. Bland annat så har tcsh tabulatorexpansion och mer avancerad kommandohistorik.
- ksh, Korn shell är en kommandotolk som siktar på att implementera POSIX Shell Language Standard. Det utvecklades av AT&T som ett svar på csh.
- zsh, Z shell har lånat många funktioner från bash, ksh och tcsh men har även en del egna funktioner. zsh är ett relativt nytt skal som utvecklats under 1990-talet fram till idag.
DOS och Windows
MS-DOS hade kommandotolken command.com. Kommandotolken i Microsoft Windows, ofta kallad ”DOS-fönstret”, är i stort sett samma skal som i DOS, med bland annat historikhanteringen som tidigare låg i doskey.exe inbyggd. Man kan även ändra så att tabulatorexpansion slås på, antingen själv i registret eller via TweakUI.
Ett skript i DOS kallas ofta för bat-fil eftersom filnamnen har filändelsen .bat. ”Bat” står för ”batch file”. Även i Windows är bat-filer körbara, men den korrekta filändelsen för skript för Windows är .cmd.
Dessutom kan man köra Unix-verktyg, däribland bash, på Windows, till exempel med paketet Cygwin.
AmigaOS
I AmigaOS, eller AmigaDOS som kommandotolken kallas, hanteras användargränssnittet huvudsakligen av en så kallad konsolhanterare (CON handler). Standardkonsolen har sedan OS 1.3 haft grundläggande funktioner såsom kommandohistorik. Ersättningskonsoler är dock populära.
Den vanligast förekommande är KingCON, som erbjuder förbättrad kommandohistorik, avancerade markörstyrningskommandon för att hoppa mellan argument och led i sökvägar. Den största förbättringen är tabulatorexpansionen, som i KingCON även har grafiska element. Om flera expansionsalternativ finns, återges dessa i ett eget fönster eller i en filväljare som kan styras med endera mus eller tangentbord.
VincED, som är KingCONs största konkurrent och som medföljer från och med AmigaOS 3.5, erbjuder i stort sett samma funktioner men är i grund och botten en hel texteditor med många funktioner för särskilt avancerade användare.
Från och med AmigaOS 4 är standardkonsolen uppdaterad med de flesta moderna funktioner som grafisk tabexpansion och markörstyrning.
Den som vill kan också installera ett Unix-skal som bash eller csh.