Tråd bedømmelse:
  • 1 Stemmer - 5 Gennemsnit
  • 1
  • 2
  • 3
  • 4
  • 5
Kom i gang med BASH scripting
12-04-2015, 14:38
#1
Kom i gang med BASH scripting
Formål:
Dette er ikke en guide i scripting, men en lille opslagsting, der forhåbentlig kan få andre i gang med at programmere,
derfor har jeg også undladt at kommentere koden. Det burde umiddelbart være læsligt, uden at kende sproget.
Og jeg anbefaler selvfølgelig, at søge på google og andre steder, før man spøger. Man falder ofte over noget interessant,
der kan give noget tillægsviden.
Jeg er ikke ekspert i sproget, og det er lavet for at være simpelt og let at forstå, så der vil uden tvivl være ting,
der er smartere eller bedre gjort på andre måder.
Det kan bare virke demotiverende, når man er helt ny til programmering, hvis man og skal overholde kodestandarder.
Sprog ændrer sig også med tiden, og tingene skal pludselig gøres anderledes.
Det er efter min opfattelse vigtigst at få det til at virke og få lidt rutine, så kan man finpudse det bag efter.
Jeg dækker absolut heller ikke det hele, men har taget lidt forskelligt med, og det burde være nok til at komme i gang.
Huske at alle sprog har nogle små kinks og triks. Disse er heller ikke taget med. Dette er heller ikke til eksperterne. :)

Alle scriptene kan startes direkte fra en linux konsol. Nogle sprog kan også benyttes på windows, men disse virker i hvert fald på linux.
Først skal man nok lige give brugertilladelse til, at scriptet må eksekveres. Dette gøres med:
$ chmod u+x <scriptnavn>
$ ./<scriptnavn>


Det klassiske Hello World eksempel:
 
#!/bin/bash

# Bash shell hello world
# Fil: helloworld.sh

echo "Hello World"


Et eksempel på en for løkke:
 
#!/bin/bash

# Bash shell for
# Fil: for.sh

for numbers in 1 2 3 4 5
do
echo $numbers
done

for numbers in $(seq 1 10);
do
echo $numbers
done


Et eksempel på en while løkke:
 
#!/bin/bash

# Bash shell while
# Fil: while.sh

while (( COUNT < 10 ))
do
echo $COUNT
let COUNT++
done


Et eksempel på if/then/else:
 
#!/bin/bash

# Bash shell if
# Fil: if.sh

COUNT=5
if [ $COUNT == 5 ]
then
echo "Ok"
fi

COUNT=5
if [ $COUNT -lt 5 ]
then
echo "Lav"
elif (( $COUNT == 5 ))
then
echo "Mellem"
else
echo "H0j"
fi


Et eksempel på et script der får brugerinput:
 
#!/bin/bash

# Bash shell input
# Fil: input.sh

read ANSWER
echo $ANSWER


Et eksempel på et script der bliver kaldt med argumenter:
 
#!/bin/bash

# Bash shell arguments
# Fil: arg.sh
# Kald med ./arg.sh 1 2

for FN in "$@"
do
echo $FN
done


Et eksempel på en funktion
 
#!/bin/bash

# Bash shell funktioner
# Fil: function.sh

function enfunktion ()
{
echo $1 $2
}

echo "Uden for funktionen"
enfunktion $(echo "I funktionen")


Et script der connecter til en webside på to forskellige måder:
 
#!/bin/bash

# Bash shell networking
# Fil: network.sh

wget -q -O - "http://google.dk"
curl -s -L "http://google.dk/"


Link:
wikibooks.org/wiki/Bash_Shell_Scripting
---
Writing a shellcode decoder stub in assembly is like talking gibberish in such a way that it is still perfectly intelligible. - iTick
Besøg denne brugers hjemmeside Find alle beskeder fra denne bruger
Citer denne besked i et svar
« Ældre | Nyere »




User(s) browsing this thread: 1 Gæst(er)