until: Unterschied zwischen den Versionen
Michi (Diskussion | Beiträge) Keine Bearbeitungszusammenfassung |
Michi (Diskussion | Beiträge) Keine Bearbeitungszusammenfassung |
||
Zeile 1: | Zeile 1: | ||
Der [[Shell-Befehl]] <b>until</b> erzeugt eine [[Schleife]], die solange wiederholt wird wie eine anfangs stehende Bedingung | Der [[Shell-Befehl]] <b>until</b> erzeugt eine [[Schleife]], die solange wiederholt wird wie eine anfangs stehende Bedingung nicht erfolgreich ist (also nicht Exit-Status 0 liefert). Die Abwicklung der Schleife wird dabei vom Exit-Status eines Befehls gesteuert. | ||
In der Praxis wird diese Schleife beispielsweise verwendet, um immer wieder die gleiche Frage an den Benutzer zu stellen, bis er sie richtig beantwortet hat. | In der Praxis wird diese Schleife beispielsweise verwendet, um immer wieder die gleiche Frage an den Benutzer zu stellen, bis er sie richtig beantwortet hat. | ||
Zeile 5: | Zeile 5: | ||
== Syntax == | == Syntax == | ||
Die Shell führt <i>Befehlsliste2</i> nur dann aus, wenn der letzte Befehl aus <i>Befehlsliste1</i | Die Shell führt <i>Befehlsliste2</i> nur dann aus, wenn der letzte Befehl aus <i>Befehlsliste1</i> nicht Exit-Status 0 geliefert hat. Nach jedem Schleifendurchlauf führt die Shell <i>Befehlsliste1</i> erneut aus. | ||
until <i>Befehlsliste1</i> | until <i>Befehlsliste1</i> |
Aktuelle Version vom 10. Januar 2009, 03:17 Uhr
Der Shell-Befehl until erzeugt eine Schleife, die solange wiederholt wird wie eine anfangs stehende Bedingung nicht erfolgreich ist (also nicht Exit-Status 0 liefert). Die Abwicklung der Schleife wird dabei vom Exit-Status eines Befehls gesteuert.
In der Praxis wird diese Schleife beispielsweise verwendet, um immer wieder die gleiche Frage an den Benutzer zu stellen, bis er sie richtig beantwortet hat.
Syntax
Die Shell führt Befehlsliste2 nur dann aus, wenn der letzte Befehl aus Befehlsliste1 nicht Exit-Status 0 geliefert hat. Nach jedem Schleifendurchlauf führt die Shell Befehlsliste1 erneut aus.
until Befehlsliste1 do Befehlsliste2 done
Verwendung
Solange ein Fehler gefunden wird, wird der Editor vi aufgerufen. Konkret wird vi aufgerufen, solange "foo.c" leer ist - also andauernd! Achtung: Das erzeugt eine nur schwer zu beendende Endlos-Schleife!
$ until cc -c foo.c > do > vi foo.c > done