Vad är Bourne Shell?

Bourne Shell är ett litet program som körs på UNIX® och Linux® operativsystem och tillhandahåller ett gränssnitt för att utföra program på systemet. Det kallas ofta ett kommandoradsgränssnitt eller kommandotolk, eftersom det inte ger något grafiskt användargränssnitt (GUI) till användaren. Kommandon och eventuella nödvändiga parametrar som ska köras skrivs in i skalet. Bourne Shell är också ett skriptspråk, vilket gör att användare kan skapa och köra skriptfiler som kan behandla data genom flera program genom ett enda kommando. På UNIX®-liknande system är programmet helt enkelt känt som "SH."

De första sådana skalen för Unix®-system var kända som Thompson Shell, skapat av Ken Thompson, en av de ursprungliga skaparna av UNIX®-operativsystemet. Thompson -skalet var begränsat till kommandotolkning och ett antal ytterligare funktioner måste utföras som externa operationer. Senare skapade Stephen Bourne Bourne Shell för att ersätta Thompsonskal, lägga till ett antal nya funktioner i själva skalet, liksom skalets skriptspråk.

I verkligheten planerades Bourne Shell som ett skriptspråk från get-go. Även om det fortfarande var kommandoradsgränssnittet för Unix® version sju, öppnade det också möjligheten för användare att utveckla skalskript som skulle koppla samman kommandon för att bearbeta data. Genom att använda denna programmering kan användaren upprätta variabler för att fånga kända eller okända data från input eller utgång och manipulera behandlingen av dessa data genom användning av villkorade uttalanden i skriptet via en teknik som kallas kontrollflöde.

Detta var också det första skalet som implementerade en funktion som kallas signalhantering. Genom Bourne -skalet kan en användare skicka en specifik typ av signal till en process som redan körs på datorn och instruera den processen att göra SOMnågot annat. Många av dessa är sätt att stoppa en process som kör och producera någon form av produktion som kan användas för felsökning, även om andra finns för att tillfälligt stoppa en process, återuppta och så vidare.

Möjligheten att direkt kontrollera filbeskrivare var en annan först för Bourne -skalet. På ett UNIX®-liknande system har varje löpande program en tabell som listar filbeskrivningarna för alla öppna filer. Detta kan inkludera allt från en enkel textfil till en katalog eller till och med de kommunikationsuttag som bearbetar använder för att dela data med varandra. För att en användare ska ha kontroll över filbeskrivningarna på ett system som tillåter en aldrig tidigare skådad kontroll över ingång och utgång för praktiskt taget allt på datorn.

Naturligtvis, även om Bourne Shell erbjöd en sådan ytterligare funktionalitet för användare, saknades det i funktioner som förmågan att kontrollera processer interaktivt, etablera kommandoalias och behålla en historia. Senare är dock ett antal nedgångarMyror började dyka upp som tog de mest användbara skalfunktionerna som hade utformats under åren och rullade upp dem till nya skal. Ett vanligt exempel är Bourne-Acain Shell, eller Bash, som är vanligt på många Linux®-system. Som ett resultat är många av dessa ättlingar fullt kapabla att utföra regelbundna Bourne Shell-skript, vilket ger alla UNIX®-liknande system en viss implementering av det ursprungliga Bourne-skalet på ett eller annat sätt. På många Linux® -system är detta helt enkelt en länk från "SH" till "bash" eller någon annan kapabel ättling.

ANDRA SPRÅK

Hjälpte den här artikeln dig? Tack för feedbacken Tack för feedbacken

Hur kan vi hjälpa? Hur kan vi hjälpa?