Een illustratieve gids om u kennis te laten maken met het Shell-concept in Linux en de populaire BASH-shell
Een 'Shell' is een 'Interactief hulpprogramma' dat wordt geleverd door Linux-systemen. Telkens wanneer we het hebben over de opdrachtregel in een Linux- of Unix-omgeving, verwijzen we naar de 'Shell'. Het werkt als een tussenpersoon tussen de gebruiker en het systeem die input van de gebruiker opneemt en die input naar het systeem stuurt.
De Linux-shell biedt gebruikers een manier om programma's te starten of gegevens op het Linux-systeem te beheren en te manipuleren. De shell faciliteert als een medium voor de gebruiker om via commando's met het systeem te communiceren.
Opdrachtprompt is het meest fundamentele en kernonderdeel van de Shell in Linux- en Unix-systemen. Het $-teken is de standaardprompt in de meeste Linux-distributies en meer specifiek in de distributies die Bourne Shell gebruiken. Opdrachtprompt fungeert als een interface waar u de opdrachten kunt invoeren. Deze commando's worden vervolgens geïnterpreteerd als uitgevoerd in de kernel. Shell-opdracht is het eerste programma dat wordt uitgevoerd wanneer u voor het eerst een terminalvenster start.
In dit korte artikel leert u enkele basisfeiten over de Shells in Linux en ook de vraag over de standaardshell in Linux zal worden behandeld.
Soorten schelp
In Linux zijn er twee hoofdtypen shells: Bourne Shell en C-type shell. Beide soorten Shell hebben een aantal voordelen en ook nadelen.
Laten we de specificaties van beide typen bekijken in de volgende secties.
Bourne Shell
Bourne Shell is geschreven door Stephen Bourne van AT&T Bell Labs. Bourne-schelp (sh
) was de eerste die in de Linux-systemen werd geïntroduceerd. Je kunt deze shell geïnstalleerd vinden als: /bin/sh
op de meeste Linux-distributies.
Hoewel Bourne Shell toen behoorlijk populair was en de voorkeur had, had het enkele nadelen. De mogelijkheid om eerdere commando's op te roepen ontbrak in deze Shell. sh
miste veel moderne mogelijkheden zoals aliassen en maakte het daarom minder effectief.
- Aangeduid als
sh
- De
$
teken is de standaardprompt.
Hieronder volgen de subcategorieën van de Bourne Shell.
- Bourne-schelp (
sh
) - Korn Shell (
ksh
) - Bourne Nogmaals Shell (
bash
) - POSIX-schaal (
sh
)
C-type schelpen
C-type shell is gemaakt met behulp van de C-programmeertaal door Bill Joy. C-shell of ‘csh
' wordt gezien als een upgrade van de Bourne Shell (sh
). csh
introduceerde veel nieuwe functies zoals opdrachtgeschiedenis en aliassen die ontbraken in de Bourne Shell.
- Aangeduid als
csh
- De
%
teken is de standaardprompt.
Hoewel het een upgrade was ten opzichte van de Bourne-shell, had het weinig uitdagingen. Ook een prominent probleem met csh
was dat de gebruiker voorkennis moest hebben van de C-programmeertaal, aangezien deze is gebouwd op basis van C-taal.
Hieronder volgen de subcategorieën van de C-type Shells.
- C-schaal (
csh
) - TENEX/TOPS C-schaal (
tcsh
)
Op de Linux-systemen kunt u verschillende shells vinden die beschikbaar zijn op uw systeem met behulp van de kat
opdracht. De informatie over de schelpen staat op de /etc/schelpen
map. Gebruik de volgende opdracht om de details over de shells te vinden.
kat /etc/schelpen
Uitgang::
gaurav@ubuntu:~$ cat /etc/shells # /etc/shells: geldige login-shells /bin/sh /bin/dash /bin/bash /bin/rbash gaurav@ubuntu:~$
De standaard shell op Linux
Om de vraag "Wat is de standaard shell in Linux?" te beantwoorden, zou het meest geschikte antwoord de 'BASH
' (Bourne Opnieuw Shell). BASH
is de meest populaire shell en wordt daarom op de meeste Linux-distributies als de standaard shell gevonden.
Om uw standaard shell in Linux te controleren, kunt u de volgende opdracht gebruiken.
echo $SHELL
Uitgang:
/bin/bash
Dit betekent dat de shell die momenteel op mijn systeem wordt gebruikt de . is BASH
schelp.
U kunt de huidige versie van de BASH
in uw Linux-systeem met behulp van de volgende opdracht:
bash --versie
Kenmerken van BASH Shell
BASH
is achterwaarts compatibel met de Bourne Shell (sh
). BASH bevat veel prominente functies van de Korn Shell (ksh
) evenals de C-Shell (csh
).
BASH biedt veel nieuwe functies die in zijn voorgangers ontbraken. En dat maakt de BASH-shell ongetwijfeld een uitstekende verbetering ten opzichte van zijn voorgangers. Veel nieuwe functies, zoals wildcards, piping en het aanvullen van tabbladen, zijn de belangrijke verbeteringen die van BASH een voorkeursshell maken als standaard voor de meeste Linux-distributies.
Laten we eens kijken naar enkele opvallende kenmerken van de Bash-shell.
Opdrachtgeschiedenis: Deze eenvoudige opdracht kan je de moeite besparen om een lange opdracht opnieuw te typen. De functie Opdrachtgeschiedenis roept de eerder ingevoerde opdrachten op die met de pijltoetsen door de terminal kunnen worden genavigeerd.
Opdrachtregel bewerken: Deze functie is nieuw geïntroduceerd met BASH. Het stelt de gebruiker in staat om vrij op de commandoregel te bewegen van links naar rechts en van rechts naar links. Deze navigatie op de terminal lijkt nu misschien normaal, maar dit was een zeer significante verbetering ten opzichte van zijn voorgangers.
aliassen: Dit is een afgeleide functie van de C-shell. Hiermee kunnen de gebruikers alleen de korte naam of opdracht typen. De shell vertaalt dit korte commando vervolgens naar het langere commando.
Een dimensionale matrix: 1-D-arrays in BASH zorgen voor eenvoudig verwijzen naar gegevens. De manipulatie van de lijsten van de gegevens wordt ook mogelijk.
Opstartbestanden: Opstartbestanden zijn de scripts die Bash leest en uitvoert wanneer het wordt gestart. Elk bestand is toegewezen voor een specifieke taak.
Omgevingsbeveiliging: BASH biedt u een buitengewone functie van 'Beperkte modus'. EEN BASH
beginnend met de naam rash
laat de shell in de beperkte modus functioneren.
Vanwege al deze opvallende kenmerken is de bash-shell een veelgebruikte shell in Linux- en Unix-achtige systemen. Het is om dezelfde reden dat het wordt geaccepteerd als de standaardshell voor de meeste Linux-distributies.
Commando's beschikbaar met de BASH-shell
BASH
shell biedt u een overvloed aan opdrachten om uw werk moeiteloos te maken en alle acties op uw systeem vanaf uw opdrachtregel zelf te besturen. Hieronder volgen enkele van de fundamentele commando's: BASH
shell-aanbiedingen op de Linux-distributies.
Opmerking: De lijst met opdrachten die beschikbaar zijn op de BASH-shell is NIET beperkt tot alleen deze tabel. Dit zijn enkele van de fundamentele commando's die ter illustratie worden gebruikt.
Opdracht | Beschrijving |
rm | commando gebruikt om een bestand te verwijderen |
cp | commando gebruikt om een bestand of map te verwijderen |
aanraken | opdracht om een leeg bestand te maken |
mkdir | opdracht om een nieuwe map te maken |
pwd | commando om de naam van de huidige werkdirectory af te drukken |
CD | commando om de directory te wijzigen |
Gevolgtrekking
Nadat we alle basisfuncties en belangrijke functies van de BASH-shell hebben bekeken, kunnen we concluderen dat de BASH-shell de populaire shell is uit de beschikbare opties vanwege zijn krachtige karakter, gebruiksvriendelijke functies en een enorme mand met opdrachten die de gebruikerservaring moeiteloos. We kunnen ook gerust stellen dat BASH de standaardshell is op de Linux-distributies.