7.6 Befehlsersetzung

Befehlsersetzung ist der Vorgang, bei dem die Shell einen Befehl ausführt und die Befehlsausführung durch die Ausgabe des ausgeführten Befehls ersetzt. Das klingt mächtig kompliziert, ist aber in der Praxis recht einfach.

Es gibt für die Befehlsersetzung zwei Formen. Die erste Form verwendet so genannte Backquotes (Accent grave, `...`), um den auszuführenden Befehl einzuschließen:

for i in `cd /old/code/dir ; echo *.c`   Erzeugt eine Liste der Dateien in /old/code/dir
do                                       Schleife über die Dateien
    diff -c /old/code/dir/$i $i | more   Vergleicht alte Version mit neuer Version in
                                          Pager-Programm
done

Die Shell führt zuerst cd /old/code/dir ; echo *.c aus. Die resultierende Ausgabe (eine Liste mit Dateien) wird dann zu der Liste, die ...

Get Klassische Shell-Programmierung now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.