Skip to main content

Wat is de Bourne Shell?

De Bourne Shell is een klein programma dat op Unix Reg wordt uitgevoerd;en Linux reg;Besturingssystemen en biedt een interface om programma's op het systeem uit te voeren.Het wordt vaak een opdrachtregelinterface of opdrachtinterpreter genoemd, omdat het geen grafische gebruikersinterface (GUI) voor de gebruiker biedt.Opdrachten en alle noodzakelijke parameters die moeten worden uitgevoerd, worden in de shell getypt.De Bourne Shell is ook een scripttaal, waarmee gebruikers scriptbestanden kunnen maken en uitvoeren die gegevens via meerdere programma's kunnen verwerken via een enkele opdracht.Op Unix reg; -achtige systemen staat het programma gewoon bekend als Sh.

De eerste dergelijke shells voor Unix reg;Systemen stonden bekend als de Thompson Shell, gemaakt door Ken Thompson, een van de oorspronkelijke makers van de Unix besturingssysteem.De Thompson -shell was beperkt tot opdrachtinterpretatie en een aantal extra functies moest worden uitgevoerd als externe bewerkingen.Later creëerde Stephen Bourne de Bourne Shell om de Thompson -shell te vervangen, waarbij een aantal nieuwe functies aan de schaal zelf werden toegevoegd, evenals de schaal van de Shells -scripttaal.

In werkelijkheid was de Bourne Shell gepland als een scripttaal vanaf het begin-gaan.Hoewel het nog steeds de opdrachtregelinterface was voor Unix Versie zeven opende het ook de mogelijkheid voor gebruikers om shell -scripts te ontwikkelen die opdrachten aan elkaar zouden koppelen om gegevens te verwerken.Door het gebruik van deze programmering kan de gebruiker variabelen vaststellen voor het vastleggen van bekende of onbekende gegevens uit invoer of uitvoer en de verwerking van die gegevens manipuleren door het gebruik van voorwaardelijke verklaringen in het script via een techniek die bestuurt als controlestroom.

Dit was ook de eerste shell die een functie implementeerde die bekend staat als signaalbehandeling.Via de Bourne -shell kan een gebruiker een specifiek type signaal verzenden naar een proces dat al op de computer wordt uitgevoerd en dat proces instrueert om iets anders te doen.Veel van deze zijn manieren om een proces te stoppen dat een soort output uitvoert en produceert die kan worden gebruikt voor foutopsporing, hoewel andere bestaan om een proces, CV tijdelijk te stoppen, enzovoort.

De mogelijkheid om de bestandsdescriptoren direct te besturen wasNog een eerste voor de Bourne Shell.Op een UNIX -achtig systeem heeft elk actief programma een tabel met de bestandsdescriptors voor open bestanden.Dit kan alles bevatten, van een eenvoudig tekstbestand tot een map of zelfs de communicatie -sockets die verwerkingen gebruiken om gegevens met elkaar te delen.Voor een gebruiker om controle te hebben over de bestandsdescriptoren op een systeem dat is toegestaan voor ongekende controle over invoer en uitvoer voor vrijwel alles op de computer.

Natuurlijk, hoewel de Bourne Shell dergelijke extra functionaliteit bood aan gebruikers, ontbrak het in functieszoals het vermogen om processen interactief te besturen, commandoaliassen op te zetten en een geschiedenis te behouden.Later begonnen echter een aantal nakomelingen te ontstaan die de meest bruikbare shell -functies hadden die in de loop van de jaren waren bedacht en in nieuwe granaten werden opgerold.Een veel voorkomend voorbeeld is de Bourne-Again Shell, of Bash, die gebruikelijk is op veel Linux systemen.Als gevolg hiervan zijn veel van deze nakomelingen volledig in staat om reguliere Bourne Shell-scripts uit te voeren, waardoor elk Unix reg; -achtig systeem op de een of andere manier een implementatie van de originele Bourne Shell krijgt.Op veel Linux reg;Systemen, dit is gewoon een link van SH naar Bash of een andere capabele afstammeling.