3. Een eerste Script

RSS FeedDelen op Twitter

koop deze Shell Scripting Tutorial als een PDF voor slechts $5 voor ons eerste shell script, zullen we gewoon een script schrijven dat zegt”Hello World”. We zullen dan proberen om meer uit een Hello Worldprogramma te halen dan elke andere tutorial die je ooit hebt gelezen : -)
Maak een bestand aan (first.sh) als volgt: first.sh

#!/bin/sh# This is a comment!echo Hello World # This is a comment, too!

De eerste regel vertelt Unix dat het bestand moet worden uitgevoerd door /bin/sh.Dit is de standaard locatie van de Bourne shell op zowat elk UNIX systeem. Als je GNU / Linux gebruikt, is / bin / sh normaal gesproken een symbolische link naar bash (of, meer recent, dash).

de tweede regel begint met een speciaal symbool: #. Dit markeert de regel als een commentaar, en het wordt volledig genegeerd door de shell.
De enige uitzondering is wanneer de allereerste regel van het bestand begint met #! – zoals de onze doet. Dit is een speciale richtlijn die Unix speciaal behandelt. Het betekent dat zelfs als je csh, ksh, of iets anders als je interactieve shell gebruikt, dat wat volgt moet worden geà nterpreteerd door de Bourne shell.
evenzo kan een perl script beginnen met de regel #!/usr/bin/perl om uw interactieve shell te vertellen dat het programma dat volgt door perl moet worden uitgevoerd. Voor Bourne shell programmering, zullen we vasthouden aan #!/bin/sh.

de derde regel voert een commando uit: echo, met twee parameters, orarguments – de eerste is "Hello"; de tweede is "World".
merk op dat echo automatisch een spatie tussen de parameters plaatst.
Het # symbool markeert nog steeds een commentaar; het # en alles wat daarop volgt wordt genegeerd door de shell.

Voer nu chmod 755 first.sh uit om het tekstbestand uitvoerbaar te maken,en voer ./first.shuit.
uw scherm ziet er dan zo uit:

$ chmod 755 first.sh
$ ./first.sh
Hello World
$

dat had u waarschijnlijk verwacht! Je zou zelfs gewoon kunnen uitvoeren:

$ echo Hello World
Hello World
$

laten we nu een paar wijzigingen aanbrengen.
merk eerst op dat echo één spatie tussen de parameters plaatst. Zet een paar spaties tussen “Hallo” en “wereld”. Wat verwacht je dat de output zal zijn? Hoe zit het met het plaatsen van een TAB karakter tussen hen?
zoals altijd met shell programmeren, probeer het en zie.
De uitvoer is precies hetzelfde! We roepen hetecho programma aan met twee argumenten; het maakt het niet meer uit dancp over de gaten daartussen.Wijzig nu de code opnieuw:

#!/bin/sh
# This is a comment!
echo "Hello World" # This is a comment, too!

Deze keer werkt het. Dat had je waarschijnlijk ook verwacht als je ervaring hebt met andere programmeertalen. Maar de sleutel om te begrijpen wat er aan de hand is met complexere commando ‘ s en shellscript, is om te begrijpen en in staat te zijn om uit te leggen: waarom?
echo is nu aangeroepen met slechts één argument – de string”Hello World”. Het drukt dit precies uit.
het punt om hier te begrijpen is dat de shell de argumenten ontleedt voordat deze worden doorgegeven aan het programma dat wordt aangeroepen. In dit geval worden de aanhalingstekens verwijderd, maar wordt de string als één argument gebruikt.
als laatste voorbeeld, typ het volgende script in. Probeer de outcome te voorspellen voordat u het uitvoert:

first2.sh

#!/bin/sh
# This is a comment!
echo "Hello World" # This is a comment, too!
echo "Hello World"
echo "Hello * World"
echo Hello * World
echo Hello World
echo "Hello" World
echo Hello " " World
echo "Hello "*" World"
echo `hello` world
echo 'hello' world

Is alles zoals u had verwacht? Zo niet, maak je geen zorgen! Dit zijn slechts enkele van de dingen die we zullen behandelen in deze tutorial … en ja, we zullen krachtiger commando ‘ s gebruiken dan echo!

RSS FeedDelen op Twitter
Terug: filosofie volgende: variabelen (deel 1)

Geef een antwoord

Het e-mailadres wordt niet gepubliceerd. Vereiste velden zijn gemarkeerd met *