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/ | ||