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
  • Porträt eines Mannes

    Studieren trotz Vollzeitjob

    Max Chris Schreiber hat nach seinem VWA-Abschluss erfolgreich ein berufsbegleitendes Bachelorstudium „Public Sector Management“ an der TU Chemnitz gemeistert und damit seinen Blick auf den öffentlichen Sektor erweitert …

  • Eine blonde Frau hält zwei beschriftete Aufkleber hoch.

    TU Chemnitz feiert erneut Vielfalt beim Christopher Street Day

    Let’s celebrate #TUCgether: TU Chemnitz nimmt am 4. Juli 2026 mit einem Wagen am Christopher Street Day in Chemnitz teil und zeigt die Vielfalt der TUC-Familie – Alle sind herzlich eingeladen, sich zu beteiligen …

  • Eine Schülerin im weißen Kittel experimentiert mit einem Reagenzglas im Labor.

    Junge Chemietalente auf der Suche nach der Substanz X

    55. Ausgabe des Chemie-Wettbewerbs „Julius Adolph Stöckhardt“ fand an der TU Chemnitz statt – Toni Radecker vom Clemens-Winkler-Gymnasium Aue belegte Platz 1 und verteidigte damit seinen Titel aus dem Vorjahr …

  • Ein Mann steht vor einem Gebäude.

    „Die Sprachbarriere verschwindet schneller, als man denkt“

    Piotr Marsza?ek aus Katowice hat über die „Betreuungsinitiative Deutsche Auslands- und Partnerschulen“ des Deutschen Akademischen Austauschdienstes den Weg an die TU Chemnitz gefunden …