SUCHE MIT Google
Web virtualuniversity.ch
HOME DIDAKTIK ECDL ELEKTRONIK GUIDES HR MANAGEMENT MATHEMATIK SOFTWARE TELEKOM
DIENSTE
Anmeldung
Newsletter abonnieren
Sag's einem Freund!
VirtualUniversity als Startseite
Zu den Favoriten hinzufügen
Feedback Formular
e-Learning für Lehrer
Spenden
Autoren login
KURSE SUCHEN
Kurse veröffentlichen

Suche nach Datum:

Suche mit Schlüsselwort:

Suche nach Land:

Suche nach Kategorie:
PARTNER
ausbildung24.ch - Ausbildungsportal, Seminare, Kursen... 

 
HTMLopen.de - Alles was ein Webmaster braucht

 
PCopen.de - PC LAN Netze und Netzwerke - alles was ein IT Profi und Systemtechnicker braucht

GUIDES UND TUTORIAL

Weitere Anweisungen

exit

Wie schon bei der interaktiven Shell kann auch eine Shell-Skript mit exit abgebrochen werden. Vom Terminal aus kann mit der DEL-Taste abgebrochen werden, sofern das Signal nicht abgefangen wird (siehe trap).

break [n]

Verlassen von n umfassenden Schleifen. Voreinstellung für n ist 1.

continue [n]

Beginn des nächsten Durchgangs der n-ten umfassenden Schleife, d. h. der Rest der Schleife(n) wird nicht mehr ausgeführt. Voreinstellung für n ist 1.

Interne Kommandos

Etliche der besprochenen Shell-Kommandos starten nicht, wie sonst üblich, einen eigenen Prozeß, sondern sie werden direkt von der Shell interpretiert und ausgeführt. Teilweise ist keine E/A-Umleitung möglich. Etliche Kommandos der folgenden Auswahl wurden schon besprochen. Andere werden weiter unten behandelt. Zum Teil gibt es interne und externe Versionen, z. B. 'echo' (intern) und '/bin/echo' (extern).

breakSchleife verlassen
continueSprung zum Schleifenanfang
echoAusgabe
evalMehrstufige Ersetzung
execÜberlagerung der Shell durch ein Kommando
exitShell beenden
exportVariablen für Subshells bekannt machen
readEinlesen einer Variablen
shiftParameterliste verschieben
trapBehandlung von Signalen

set

set [Optionen] [Parameterliste]
Setzen von Shell-Optionen und Positionsparametern ($1 ... $n). Einige Optionen:
  • v Gibt die eingelesenen Shell-Eingaben auf dem Bildschirm aus.
  • x Gibt alle Kommandos vor der Ausführungen aus (--> zeigt Ersetzungen).
  • n Liest die Kommandos von Shell-Skripten, führt sie jedoch nicht aus.

Der Aufruf von set ohne Parameter liefert die aktuelle Belegung der Shell-Variablen. Außerdem kann set verwendet werden, um die Positionsparameter zu besetzen.

set eins zwei drei vier besetzt die Parameter mit $1=eins, $2=zwei, $3=drei und $4=vier. Da dabei auch Leerzeichen, Tabs, Zeilenwechsel und anderes "ausgefiltert" wird (genauer alles, was in der Variablen IFS steht), ist set manchmal einfacher zu verwenden, als die Zerlegung einer Zeile mit cut. Die Belegung der Parameter kann auch aus einer Variablen (z. B. set $VAR) oder aus dem Ergebnis eines Kommandoaufrufs erfolgen. Beispiel:

                                        set `date`                # $1=Fri $2=Apr $3=28 $4=10:44:16 $5=MEZ $6=1999 
                                        echo "Es ist $4 Uhr" 
                                        Es ist 10:44:16 Uhr 
                                        
Aber es gibt Fallstricke. Wenn man beispielsweise den Output von "ls" bearbeiten möchte, gibt es zunächst unerklärliche Fehlermeldungen (set: unknown option):
                                        ls -l > foo
                                        echo "Dateiname Laenge"
                                        while read LINE
                                          do
                                          set $LINE
                                          echo $9 $5
                                        done < foo
                                        rm foo
                                        
Da die Zeile mit dem Dateityp und den Zugriffsrechten beginnt, und für normale Dateien ein "-" am Zeilenbeginn steht, erkennt set eine falsche Option (z. B. "-rwxr-xr-x"). Abhilfe schafft das Voranstelle eines Buchstabens:
                                        ls -l > foo
                                        echo "Dateiname Laenge"
                                        while read LINE
                                          do
                                          set Z$LINE
                                          echo $9 $5
                                        done < foo
                                        rm foo
                                        

Weitere Beispiele: Wenn ein Benutzer eingeloggt ist, wird ausgegeben seit wann. Sonst erfolgt eine Fehlermeldung.

                                        if HELP=`who | grep $1`
                                        then 
                                          echo -n "$1 ist seit "
                                          set $HELP
                                          echo "$5 Uhr eingeloggt."
                                        else 
                                          echo "$1 ist nicht auffindbar"
                                        fi
                                        

Ersetzen der englischen Tagesbezeichung durch die deutsche:

                                        set `date`
                                        case $1 in
                                          Tue) tag=Die;;
                                          Wed) tag=Mit;;
                                          Thu) tag=Don;;
                                          Sat) tag=Sam;;
                                          Sun) tag=Son;;
                                          *)   tag=$1;;
                                        esac
                                        echo $tag $3.$2 $4 $6 $5
                                        

DIPLOMARBEITEN UND BÜCHER

Diplomarbeiten zum Runterladen:

Suche im Katalog:
Architektur / Raumplanung
Betriebswirtschaft - Funktional
Erziehungswissenschaften
Geowissenschaften
Geschichtswissenschaften
Informatik
Kulturwissenschaften
Medien- und Kommunikationswissenschaften
Medizin
Psychologie
Physik
Rechtswissenschaft
Soziale Arbeit
Sozialwissenschaften


JOBS
HOME | E-LEARNING | SITEMAP | LOGIN AUTOREN | SUPPORT | FAQ | KONTAKT | IMPRESSUM
Virtual University in: Italiano - Français - English - Español
VirtualUniversity, WEB-SET Interactive GmbH, www.web-set.com, 6301 Zug

Partner:   Seminare7.de - PCopen.de - HTMLopen.de - WEB-SET.com - YesMMS.com - Ausbildung24.ch - Manager24.ch - Job und Karriere