Zoeken op website

Begrijp Linux Shell en basistips voor shell-scripttaal - Deel I


Beeld zegt meer dan woorden en het onderstaande beeld zegt alles over de werking van Linux.

Lees ook

  1. 5 Shell-scripts om Shell-programmering te leren – Deel II
  2. Zeilen door de wereld van Linux BASH-scripting – Deel III

Linux-shell begrijpen

  1. Shell: een opdrachtregelvertaler die een gebruiker verbindt met het besturingssysteem en het mogelijk maakt de opdrachten uit te voeren of een tekstscript te maken.
  2. Proces: elke taak die een gebruiker in het systeem uitvoert, wordt een proces genoemd. Een proces is weinig complexer dan alleen een taak.
  3. Bestand: het bevindt zich op de harde schijf (hdd) en bevat gegevens die eigendom zijn van een gebruiker.
  4. X-windows oftewel vensters: een Linux-modus waarin het scherm (monitor) kan worden opgesplitst in kleine “delen”, genaamd windows<, waarmee een gebruiker meerdere dingen tegelijkertijd kan doen en/of gemakkelijk van de ene taak naar de andere kan overschakelen en afbeeldingen op een leuke manier kan bekijken.
  5. Tekstterminal: een monitor die alleen tekst kan weergeven, geen afbeeldingen of een zeer eenvoudige grafische weergave.
  6. Sessie: tijd tussen aanmelden aan en uitloggen bij het systeem.

Typen shells op een standaard Linux-distributie

Bourne-shell: De Bourne-shell was een van de belangrijkste shells die in vroege versies werd gebruikt en werd de facto een standaard. Het is geschreven door Stephen Bourne van Bell Labs. Elk Unix-achtig systeem heeft minstens één shell die compatibel is met de Bourne-shell. De Bourne shell-programmanaam is “sh” en bevindt zich doorgaans in de bestandssysteemhiërarchie op /bin/sh.

C-shell: De C-shell is ontwikkeld door Bill Joy voor de Berkeley Software Distribution. De syntaxis is gemodelleerd naar de programmeertaal C. Het wordt voornamelijk gebruikt voor interactief terminalgebruik, maar minder vaak voor scripting en beheer van het besturingssysteem. C shell heeft veel interactieve opdrachten.

Beginnen met plezier! (Linux-shell)

Er bestaan duizenden opdrachten voor opdrachtregelgebruikers. Hoe zit het met het onthouden van ze allemaal? Hmmm! Dat kan gewoon niet. De echte kracht van de computer is om uw werk te vergemakkelijken; u moet het proces automatiseren en daarom heeft u scripts nodig.

Scripts zijn verzamelingen opdrachten, opgeslagen in een bestand. De shell kan dit bestand lezen en op de commando's reageren alsof ze op het toetsenbord zijn getypt. De shell biedt ook een verscheidenheid aan handige programmeerfuncties om scripts echt krachtig te maken.

Basisprincipes van Shell-programmering

  1. Om een Linux-shell te krijgen, moet je een terminal starten.
  2. Om te zien welke shell je hebt, voer je uit: echo $SHELL.
  3. In Linux staat het dollarteken ($) voor een shell-variabele.
  4. Het ‘echo’ commando geeft gewoon terug wat je typt.
  5. De pijplijninstructie (|) komt te hulp bij het aan elkaar koppelen van verschillende commando's.
  6. Linux-opdrachten hebben hun eigen syntaxis, Linux zal je de fouten niet vergeven. Als je een commando verkeerd uitvoert, zul je niets laten zakken of beschadigen, maar het zal niet werken.
  7. #!/bin/sh – Het heet shebang. Het is bovenaan een shellscript geschreven en geeft de instructie door aan het programma /bin/sh.

Over shellscript

Shell-script is slechts een eenvoudig tekstbestand met de extensie “.sh”, met uitvoerbare toestemming.

Proces van het schrijven en uitvoeren van een script

  1. Terminal openen.
  2. Navigeer naar de plaats waar u het script wilt maken met de opdracht ‘cd’.
  3. Cd (enter) [Hiermee wordt de prompt weergegeven in Uw thuismap].
  4. tik op hello.sh (hier hebben we het script de naam hello gegeven, onthoud dat de extensie ‘.sh‘ verplicht is).
  5. vi hello.sh (nano hello.sh) [Je kunt je favoriete editor gebruiken om het script te bewerken].
  6. chmod 744 hello.sh (waardoor het script uitvoerbaar wordt).
  7. sh hello.sh of ./hello.sh (het script uitvoeren)
Je eerste script schrijven
#!/bin/bash
My first script

echo "Hello World!"

Sla de bovenstaande regels op in een tekstbestand, maak het uitvoerbaar en voer het uit, zoals hierboven beschreven.

Voorbeelduitvoer

Hello World!

In de bovenstaande code.

#!/bin/bash (is the shebang.)
My first script (is comment, anything following '#' is a comment)
echo “Hello World!” (is the main part of this script)
Je tweede script schrijven

Oké, tijd om naar het volgende script te gaan. Dit script vertelt u uw “gebruikersnaam” en vermeldt de actieve processen.

#! /bin/bash
echo "Hello $USER"
echo "Hey i am" $USER "and will be telling you about the current processes"
echo "Running processes List"
ps

Maak een bestand met bovenstaande codes, sla het op wat je maar wilt, maar met de extensie “.sh“, maak het uitvoerbaar en voer het uit vanaf je terminal.

Voorbeelduitvoer

Hello tecmint
Hey i am tecmint and will be telling you about the current processes
Running processes List
  PID TTY          TIME CMD
 1111 pts/0    00:00:00 bash
 1287 pts/0    00:00:00 sh
 1288 pts/0    00:00:00 ps

Was dit cool? Een script schrijven is net zo eenvoudig als het verkrijgen van een idee en het schrijven van pijplijnopdrachten. Er zijn ook enkele beperkingen. Shell-scripts zijn uitstekend geschikt voor beknopte bestandssysteembewerkingen en het scripten van de combinatie van bestaande functionaliteit in filters en opdrachtregelprogramma's via pipelines.

Wanneer uw behoeften groter zijn – of het nu gaat om functionaliteit, robuustheid, prestaties, efficiëntie enz. – dan kunt u overstappen naar een taal met meer functionaliteit.

Als je de programmeertaal C/Perl/Python of een andere programmeertaal al kent, zal het leren van de scripttaal niet zo moeilijk zijn.

Je derde script schrijven

Ga naar en schrijf ons derde en laatste script voor dit artikel. Dit script fungeert als een interactief script. Waarom voer je dit eenvoudige maar interactieve script niet zelf uit en vertel ons hoe je je voelde.

#! /bin/bash
echo "Hey what's Your First Name?";
read a;
echo "welcome Mr./Mrs. $a, would you like to tell us, Your Last Name";
read b;
echo "Thanks Mr./Mrs. $a $b for telling us your name";
echo "*******************"
echo "Mr./Mrs. $b, it's time to say you good bye"

Voorbeelduitvoer

Hey what's Your First Name?
Avishek
welcome Mr./Mrs. Avishek, would you like to tell us, Your Last Name
Kumar
Thanks Mr./Mrs. Avishek Kumar for telling us your name
******************************************************
Mr./Mrs. Kumar, it's time to say you good bye

Welnu, dit is geen einde. We hebben geprobeerd je een voorproefje van scripting te geven. In ons toekomstige artikel zullen we dit scripttaalonderwerp, eerder een nooit eindigend scripttaalonderwerp, verder uitwerken om het nog perfecter te maken. Uw waardevolle gedachten in reacties worden zeer op prijs gesteld. Like en deel ons en help ons te verspreiden. Tot die tijd gewoon relaxen, verbonden blijven, op de hoogte blijven.

Lees ook: 5 Shell-scripts om Shell-programmering te leren – Deel II