Notice: Undefined index: string in /var/www/stefan/howtux.de/htdocs/article.php on line 49

Notice: Undefined index: settings in /var/www/stefan/howtux.de/htdocs/article.php on line 61
Home / Linux Shell-Skripte / Funktionen

Funktionen

Kategorie: Linux Shell-SkripteErstellt: 02.10.2007 - 23:58 
Autor: Stefan Abu Salah
0

Funktionen

Funktionen in Shellskripten erlauben es wartungfreundlicheren, einfacher zu lesenden und wiederverwendbaren Code zu erstellen. Funktionen bestehen generell aus einem Funktionskopf und einem Anweisungsblock. Es gibt zwei verschiedene Arten eine Funktion zu erstellen:

Beispiel: Varianten von Funktionen

function FUNCTION_NAME
{

}

oder

FUNKTION_NAME()
{

}

Je nachdem welchen Interpreter Sie verwenden kann es sein, dass nur eine der oben vorgestellten Varianten funktioniert. Mit dem Interpreter bash funktionieren beide.

Beispiel: Einfache Funktionen

#!/bin/bash

function add
{
echo "Addition"
}

oder

sub()
{
echo "Substraktion"
}

add

sub

# Skript Ende

stefan@troubadix/home/stefan$ ./skript.sh
Addition
Substraktion

Wie Sie in obigem Beispiel sehen können reicht es aus den Namen der Funktion im Shellscript anzugeben um die entsprechende Funktion auszuführen.

Funktionsparameter
Es ist natürlich auch möglich einer Funktion Parameter zu übergeben. Im Gegensatz zu anderen Programmiersprachen ist es hier jedoch nicht erforderlich sich im Vorhinein Gedanken zu machen welche Parameter übergeben werden sollen. Statt dessen werden die übergebenen Parameter durchnummeriert und mit dem Dollarzeichen markiert angesprochen. Es ist unerheblich wieviele Parameter Sie einer Funktion übergeben und was Sie in dieser Funktion mit den Parametern anstellen.

Beispiel: Funktionsparameter

#!/bin/bash

function add
{
expr $1 + $2
}

oder

sub()
{
expr $1 - $2
}

add 5 7

sub 7 5

# Skript Ende

stefan@troubadix/home/stefan$ ./skript.sh
12
2

Variablengültigkeit
Anders als in den meisten Programmiersprachen haben Variablen in Shellskripten im gesamten Skript nur eine Gültigkeit. Änderungen an einer Variable sin unabhängig von dem Ort ihrer Änderung im gesamten Skript gültig.

Beispiel: Variablengültigkeit

#!/bin/bash

name="hase"

function friss
{
name="wolf"
}

echo $name

friss

echo $name
# Skript Ende

stefan@troubadix/home/stefan$ ./skript.sh
hase
wolf

Funktionsrückgaben
Funktionen können einen Status ihrer Arbeit zurückgeben. Dies ist dann Sinnvoll wenn Sie entscheiden müssen ob eine Aufgabe von einer Funktion erfolgreich erledigt wurde oder nicht. Es ist im Standard vorgesehen das eine Funktion (oder auch jedes Programm) bei erfolgreicher Ausführung eine 0 zurückgibt und eine 1 falls bei der Verarbeitung etwas schief ging. Rückgaben realisiert man mit dem Schlüsselwort return und sind optional.

Auf Rückgaben von Programmen oder Funktionen kann mittels der Variablen $? zugegriffen werden. Diese Variable enthält den Rückgabewert der/des letzen Funktion/Programmes.

Beispiel: Rückgaben

#!/bin/bash

function friss
{
name="wolf"
return 0;
}

friss

if [ $? -eq 0 ]
then
echo $name "hat gefressen"
else echo $name "hat hunger"
fi

# Skript Ende

stefan@troubadix/home/stefan$ ./skript.sh
wolf hat gefressen



Notice: Undefined variable: urli in /var/www/stefan/howtux.de/htdocs/classes.php on line 240
Bookmark auf del.icio.usBookmark auf Mister WongBookmark auf BlinklistBookmark auf GoogleBookmark auf LinkarenaBookmark auf YiggBookmark auf FolkdBookmark auf Yahoo
Home / Linux Shell-Skripte / Funktionen
simplum