Springe zum Hauptinhalt

Bourne
next up previous contents
Next: Spezielle Probleme und Kommandos Up: Ablaufsteuerung Previous: exit-Kommando

Funktionen

  • Definition

    func_name () {     cmd_liste }


    bzw.


    func_name () { cmd_liste; }


  • Aufruf


    func_name [[ arg_1 [ arg_2 ... ]]


    Die Werte von $arg\_1$, $arg\_2$ usw. werden den Shell-Variablen 1, 2 usw. zugewiesen und können damit über $1, $2, usw.  abgerufen werden.

  • Rückkehr aus der Funktion
    • bei Erreichen des letzten Kommandos
    • über das Kommando

          return [ n]


      Dabei liefert n den Exit-Status der Funktion. Falls n weggelassen wird, ergibt sich der Exit-Status der Funktion aus dem Exit-Status des zuletzt ausgeführten Kommandos.

  • Bemerkungen
    • Funktionen existieren nur in der Shell, in der sie definiert wurden. Demzufolge bleiben Veränderungen (z.B. durch Argumentübergabe an die Funktion, d.h. Setzen der Variablen 1 usw. nach Beendigung der Funktion erhalten.
    • Funktionsdefinitionen können in .profile gespeichert werden bzw. in einen File $funcdef\_file$, welches später (oder in .profile) durch

          . funcdef_file


      ausgeführt wird. Auf diese Weise können Funktionen auch in Sub-Shells verfügbar gemacht werden (z.B. in einen Shell-Script).

    • Der Aufruf von Funktionen ist (interaktiv) am Terminal möglich.
    • Funktionen sind schneller als Shell-Scripts, da sie intern gespeichert werden.
  • Beispiel
    #
    # mcd <verzeichnis>  --> Wechseln in <verzeichnis>
    #
    # mcd -              --> ins vorherige Verzeichnis
    # 
    mcd ()
    {
        AKTDIR=`pwd`
        if [ "$1" = "-" ]
        then
            /bin/echo -n $ALTDIR --
            cd $ALTDIR;
        else
            /bin/echo -n $1 --
            cd "$1";
        fi
        ALTDIR=$AKTDIR
    }
    
    

next up previous contents
Next: Spezielle Probleme und Kommandos Up: Ablaufsteuerung Previous: exit-Kommando
  • Skulptur der Justizia vor einem Gebäude

    Schulterschluss für ein Studium der Rechtswissenschaften an der TU Chemnitz

    Neue Website der TU Chemnitz zeigt, dass sich Vertreterinnen und Vertreter aus der Justiz, der Anwaltschaft, der Wirtschaft und der Wissenschaft einig sind, wie man in Chemnitz durch neue Studienangebote in den Rechtswissenschaften dem zunehmenden Bedarf an Juristinnen und Juristen in Sachsen wirkungsvoll begegnen kann …

  • Drei Männer stehen nebeneinander. Ein Mann in der Mitte hält eine Urkunde in den Händen.

    Peter Bernshausen ist neuer Kanzler der TU Chemnitz

    Mit der Bestellung durch das Sächsische Staatsministerium für Wissenschaft, Kultur und Tourismus übernimmt Peter Bernshausen ab 1. November 2024 die Leitung der Zentralen Universitätsverwaltung …

  • Grafik mit Vernetzungssymbolen

    Tag des wissenschaftlichen Nachwuchses am 28. November 2024

    Der „Tag des wissenschaftlichen Nachwuchses“ der TU Chemnitz steht in diesem Jahr im Zeichen der vielfältigen Wege zur Promotion und zu unterschiedlichen Karriereoptionen nach der Promotion – Kostenfreie Teilnahme ist nach Online-Anmeldung möglich …

  • Blick auf ein buntes Bild an einem Gebäudeanbau.

    Neue Kunst im „Erfenschlag“

    Studierende und Beschäftigte der TU Chemnitz schufen durch Malen auf dem Wasser ein Kunstwerk, das nun einen Gebäudeanbau auf dem Gelände des südlichsten Uni-Standorts ziert …