Page tree

Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

1                   Shellscripts - Einfache Batchabläufe erstellen.

Ein Shellscript ist vergleichbar mit den unter MS-DOS bekannten "Batchdateien", mit den eine Reihe von Befehlen zusammengefaßt werden kann. Unter UNIX wird eine solche Reihe von Befehlen in einer einfachen Textdatei gespeichert. Diese muß das Ausführungsrecht besitzen, damit Sie gestartet werden kann. 
Um das Verzeichnis zu ermitteln, in dem die Datei gespeichert ist, wird der Befehl "type" verwendet. Dieser gibt auch an, ob es sich um einen internen Befehl der Shell oder um ein externes Shellscript handelt.

...

Mit dem Befehl "shift" werden alle Parameter "aufgerückt", d.h. $1 entfällt, $2 wird zu $1 kopiert, $3 zu $2 usw. |

1.3             3 Returnwerte abfragen / setzen

Der Returncode der letzten Anweisung ist in der Variablen "$?" gespeichert. Hierbei wird der Wert 0 in der Regel mit einem positiven Ergebnis verknüpft. 
Der Returncode des aktuellen Shellscripts wird als Parameter zum Befehl exit übergeben. Beispiel:
 
exit -1  #Beendet das aktuelle Shellscript mit dem Wert -1 

1.4             4 Einfache Bedingungsprüfung

...

Die Option -o bewirkt die OR-Verknüfung, -a steht für die AND-Verknüpfung. 

1.5             5 Mehrfache Bedingungen

Sind für eine Bedingung mehrere mögliche Fälle zu unterscheiden ist die Abfrage mit "if-Anweisungsblöcken" unübersichtlich. In diesem Fall wird die case-Anweisung verwendet. Allgemeine Syntax: 

...

Code Block
echo "Wollen Sie die Bearbeitung wirklich durchführen ? (J/N)"
read EINGABE                                                  
case $EINGABE in                                              
J)                                                            
    echo "Die Verarbeitung wird durchgeführt"                 
    ;;                                                        
N)                                                            
    echo "Die Verarbeitung wird nicht durchgeführt"           
    ;;                                                        
*)                                                            
    echo "Falsche Eingabe $EINGABE . Programmabbruch"         
    exit -1                                                   
    ;;                                                        
esac
 

1.6             6 Schleifen

Durch eine while-Schleife kann eine Folge von Anweisungen solange ausgeführt werden, bis eine bestimmte Bedingung erreicht wird. 
Allgemeine Syntax: 

...