Springe zum Hauptinhalt

Bourne
next up previous contents
Next: read-Kommando Up: Spezielle Probleme und Kommandos Previous: Abfangen von Signalen

eval-Kommando


Die Argumente des eval-Kommandos werden als Kommando betrachtet und ausgeführt.

  • Notation:


    eval arg1 ... argn

  • Beispiel:
    #!/bin/sh
    #
    # Kopieren von Filebaeumen in ein Zielverzeichnis
    # Aufruf: copytree verzeichnis1 [verzeichnis2 ... ] ziel_verzeichnis
    #
    eval 'last=$'$#
    while [ $# -gt 1 ]
    do
         echo "copy from $1 to $last"
         (cd $1; tar cf - .) | (cd $last; tar xf -)
         shift
    done
    
  • Bemerkung:
    • eval notwendig, um zweistufige Auswertung zu erzwingen:

      1. $# wird ersetzt durch Argumentzahl

      2. Zuweisung des Zeichenkettenwertes des letzten Argumentes an die Variable last!!

    • Das Kommando tar -xf - . bewirkt, daß von der Standardeingabe (-), d.h. der Pipe gelesen und auf das aktuelle Verzeichnis geschrieben wird.
    • Die Konsequenz dieser Pipeline besteht darin, daß alle Files des Ausgangsverzeichnisses kopiert werden. Das Starten zweier Sub-Shells ist notwendig, um mit ,,zwei`` aktuellen Verzeichnissen arbeiten zu können.


  • Ki generiertes Bild

    Offen für Argumente geht in die zweite Runde

    Online-Debattenformat der Juniorprofessur Soziologie der TU Chemnitz thematisiert am 10. September 2025 die Rolle der Solarenergie im Zuge der Energiewende …

  • Gruppe vieler Menschen

    Let's run #TUCgether!

    Zum Jubiläum des Chemnitzer Firmenlaufs gingen 266 Laufbegeisterte für die TU Chemnitz an den Start …

  • Menschen stehen vor einer Leinwand

    Erfolgreiche Summer School an der TU Chemnitz

    Professur Medienpsychologie und die Hochschulallianz Across begrüßten zur Summer School „How much science is in science fiction?“ medienbegeisterte Nachwuchswissenschaftlerinnen und -wissenschaftler aus neun verschiedenen Ländern …

  • Menschen stehen vor einem Haus

    Als Azubi an die Uni? Ja, klar!

    Kanzler der TU Chemnitz begrüßte neue Auszubildende und gratulierte Absolventinnen und Absolventen zum erfolgreichen Berufsabschluss – TU Chemnitz bildet aktuell in zehn Berufen aus …