Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
| Beide Seiten der vorigen Revision Vorhergehende Überarbeitung Nächste Überarbeitung | Vorhergehende Überarbeitung | ||
| modul:m122:learningunits:lu06:iteration [2024/11/18 07:50] – msuter | modul:m122:learningunits:lu06:iteration [2024/12/04 19:12] (aktuell) – msuter | ||
|---|---|---|---|
| Zeile 1: | Zeile 1: | ||
| ====== LU06b - Einführung in Iterationen in Bash ====== | ====== LU06b - Einführung in Iterationen in Bash ====== | ||
| + | {{https:// | ||
| + | |||
| Iterationen (Schleifen) in Bash ermöglichen es, wiederholt eine Gruppe von Befehlen auszuführen, | Iterationen (Schleifen) in Bash ermöglichen es, wiederholt eine Gruppe von Befehlen auszuführen, | ||
| - | ---- | ||
| - | ==== 1. **for**-Schleife ==== | + | ===== for-Schleife |
| Die **for-Schleife** wird verwendet, um durch eine Liste von Werten oder Dateien zu iterieren. | Die **for-Schleife** wird verwendet, um durch eine Liste von Werten oder Dateien zu iterieren. | ||
| - | === Grundstruktur: | + | ==== Grundstruktur: |
| <code bash> | <code bash> | ||
| for variable in Liste; do | for variable in Liste; do | ||
| Zeile 15: | Zeile 16: | ||
| </ | </ | ||
| - | === Beispiel: === | + | ==== Beispiel: |
| <code bash> | <code bash> | ||
| #!/bin/bash | #!/bin/bash | ||
| Zeile 30: | Zeile 31: | ||
| </ | </ | ||
| - | === for-Schleife für Dateien: === | + | ==== for-Schleife für Dateien: |
| <code bash> | <code bash> | ||
| #!/bin/bash | #!/bin/bash | ||
| Zeile 40: | Zeile 41: | ||
| ---- | ---- | ||
| - | ==== 2. **while**-Schleife ==== | + | ===== while-Schleife |
| Die **while-Schleife** führt Befehle aus, solange eine Bedingung wahr ist. | Die **while-Schleife** führt Befehle aus, solange eine Bedingung wahr ist. | ||
| Zeile 70: | Zeile 71: | ||
| </ | </ | ||
| - | ---- | + | ==== Alle Zeilen einer Datei lesen ==== |
| + | Diese Iteration liest eine Datei zeilenweise und stellt die Daten in die Variable '' | ||
| + | Die Variable mit dem Dateinamen wird in der letzten Zeile mittels Umleitung (''<'' | ||
| + | <code bash> | ||
| + | filename=someFile.dat | ||
| + | while read data; do | ||
| + | # Process the data | ||
| + | done < $filename | ||
| - | ==== 3. **until**-Schleife ==== | + | ===== until-Schleife |
| Die **until-Schleife** ist das Gegenteil der **while-Schleife**: | Die **until-Schleife** ist das Gegenteil der **while-Schleife**: | ||
| - | === Grundstruktur: | + | ==== Grundstruktur: |
| <code bash> | <code bash> | ||
| until [ Bedingung ]; do | until [ Bedingung ]; do | ||
| Zeile 83: | Zeile 91: | ||
| </ | </ | ||
| - | === Beispiel: === | + | ==== Beispiel: |
| <code bash> | <code bash> | ||
| #!/bin/bash | #!/bin/bash | ||
| Zeile 102: | Zeile 110: | ||
| </ | </ | ||
| - | ---- | + | ===== Schleifensteuerung |
| - | + | ||
| - | ==== 4. Schleifensteuerung ==== | + | |
| Bash bietet Befehle, um Schleifen zu kontrollieren: | Bash bietet Befehle, um Schleifen zu kontrollieren: | ||
| Zeile 110: | Zeile 116: | ||
| * **continue**: | * **continue**: | ||
| - | === Beispiele: === | + | ==== Beispiele: |
| <code bash> | <code bash> | ||
| # Mit break | # Mit break | ||
| Zeile 133: | Zeile 139: | ||
| ---- | ---- | ||
| - | ==== Zusammenfassung ==== | + | ===== Zusammenfassung |
| ^ Schleife | ^ Schleife | ||