Shell -behandeling van opdrachtregel in UNIX -besturingssysteem
De UNIX -shell fungeert als een tolk tussen de gebruiker en het besturingssysteem. Het neemt opdrachten die door de gebruiker zijn ingevoerd in de opdrachtregel, verwerkt ze en voert ze uit. Hier is een uitsplitsing van hoe de shell opdrachtregels behandelt:
1. De opdrachtregel parseren:
* De shell eerst leest de opdrachtregel die u typt.
* Het splitst dan splitst de lijn in afzonderlijke woorden, gescheiden door spaties of tabbladen. Deze woorden worden tokens genoemd .
* Elke token wordt dan geïnterpreteerd gebaseerd op de betekenis ervan:
* opdrachten: Dit zijn de primaire acties die u wilt uitvoeren, zoals `ls`,` cat`, `mkdir`, etc.
* argumenten: Deze bieden aanvullende informatie voor de opdracht, zoals bestandsnamen voor `ls` of directorynamen voor` mkdir`.
* Opties: Dit zijn vlaggen die het gedrag van het commando wijzigen, meestal aangegeven door een koppelteken gevolgd door een letter, bijvoorbeeld `-l` voor een lange vermelding in` ls`.
2. Uitbreiding van speciale tekens:
* De shell presteert uitbreiding Op de opdrachtregel vervangt het vervangen van bepaalde tekens door hun overeenkomstige waarden:
* Tilde -uitbreiding: `~` breidt uit naar de thuismap van de gebruiker.
* Variabele uitbreiding: `$ Var` breidt uit naar de waarde van de variabele` var`.
* Brace -uitbreiding: `{a, b}` breidt uit naar `a` en` b`.
* Wildcard -uitbreiding: `*` komt overeen met een tekenreeks, `??` komt overeen met een enkel teken en `[]` komt overeen met een teken binnen de beugels.
3. Op zoek naar de opdracht:
* De shell zoekt naar de opdracht die u hebt ingevoerd in een vooraf gedefinieerd pad . Dit pad bevat mappen waar uitvoerbare bestanden zich bevinden.
* Als de opdracht wordt gevonden, start de shell het overeenkomstige uitvoerbare programma.
4. De opdracht uitvoeren:
* De shell stelt de omgeving op in voor het commando door het door te geven, de argumenten, opties en andere relevante informatie.
* De opdracht voert vervolgens uit en voert de gevraagde actie uit.
* Nadat de opdracht is voltooid, geeft de shell elke gegenereerde uitvoer weer en vraagt u om een nieuwe opdracht.
5. Foutbehandeling:
* Als de shell een fout tegenkomt, zoals een opdracht niet gevonden of ongeldige argumenten, wordt een foutmelding weergegeven .
* U kunt vaak foutcodes en signalen gebruiken om fouten in scripts en programma's af te handelen.
Voorbeeld:
`` `
$ ls -l/home/user/documenten
`` `
Hier is `ls` de opdracht,` -l` is een optie en `/home/user/documenten 'is een argument.
Samenvatting:
De UNIX -shell speelt een cruciale rol bij het faciliteren van interactie met het besturingssysteem. Het interpreteert gebruikersinvoer, breidt speciale tekens uit, zoekt naar opdrachten en voert ze uit, en biedt een krachtige en flexibele interface voor het beheren en communiceren met het systeem. |