Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
| Beide Seiten der vorigen Revision Vorhergehende Überarbeitung Nächste Überarbeitung | Vorhergehende Überarbeitung | ||
|
bash [2015/11/11 10:19] root |
bash [2022/07/19 13:38] (aktuell) root [Übergabe an andere Programme] |
||
|---|---|---|---|
| Zeile 38: | Zeile 38: | ||
| done | done | ||
| </ | </ | ||
| + | |||
| + | |||
| + | |||
| + | ===== for-Zählschleife ===== | ||
| + | |||
| + | * Geht nur ohne Variablen (mit festen Werten) direkt in Bash | ||
| + | |||
| + | Syntax: | ||
| + | < | ||
| + | for i in {x..y}; do | ||
| + | code; | ||
| + | done | ||
| + | </ | ||
| + | |||
| + | Beispiel: | ||
| + | for i in {1..5}; do | ||
| + | Echo " | ||
| + | done | ||
| + | </ | ||
| + | |||
| + | Obiges Beispiel gibt 5 mal Hallo aus. | ||
| + | |||
| + | * Mit Variablen muss man das externe " | ||
| + | |||
| + | Syntax: | ||
| + | < | ||
| + | for i in $(seq $a $b); do | ||
| + | code | ||
| + | done | ||
| + | </ | ||
| + | |||
| + | Beispiel: | ||
| + | < | ||
| + | a=5 | ||
| + | for i in $(seq 1 $a); do | ||
| + | echo " | ||
| + | done | ||
| + | </ | ||
| + | |||
| + | Obiges Beispiel gibt 5 mal Hallo aus | ||
| ===== Programme aufrufen/ Andere Scripte aurufen ===== | ===== Programme aufrufen/ Andere Scripte aurufen ===== | ||
| Zeile 95: | Zeile 135: | ||
| + | ====== Anführungszeichen und Single-Quotes ====== | ||
| + | |||
| + | * Zeichenketten in < | ||
| + | * < | ||
| + | * < | ||
| + | |||
| + | <sxh bash> | ||
| + | a=5 | ||
| + | echo " | ||
| + | 5 | ||
| + | </ | ||
| + | |||
| + | Die Zeichenkette hinter " | ||
| + | Dementsprechend wird " | ||
| + | |||
| + | <sxh bash> | ||
| + | a=5 | ||
| + | echo " | ||
| + | $a | ||
| + | </ | ||
| + | |||
| + | Die Zeichenkette hinter " | ||
| + | Dementsprechend wird " | ||
| + | |||
| + | ===== Übergabe an andere Programme ===== | ||
| + | |||
| + | Es gibt Programme die Shellkommandos übernehmen um sie dann beim eintreten bestimmter Bedingungen auszuführen. \\ | ||
| + | Man muss aufpassen ob man die Shell-Befehlskette die man übergibt in %%"%% oder %%'%% setzt! | ||
| + | |||
| + | <sxh bash> | ||
| + | mycommand -c "echo $a" | ||
| + | </ | ||
| + | |||
| + | * da der Wert für Parameter " | ||
| + | * ist " | ||
| + | |||
| + | |||
| + | <sxh bash> | ||
| + | mycommand -c 'echo $a' | ||
| + | </ | ||
| + | |||
| + | * da der Wert für Parameter " | ||
| + | * d.h. mycoomand bekommt "echo $a" übergeben | ||
| ====== Debugging/ | ====== Debugging/ | ||