docs:dollarstern
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
docs:dollarstern [2015/09/14 07:16] – BrkSLPBSCtwqXvZUaD 146.185.234.48 | docs:dollarstern [2016/03/15 00:12] (current) – old revision restored 91.89.129.106 | ||
---|---|---|---|
Line 1: | Line 1: | ||
- | http:// | + | ====== $* und $@ - Shell Uebergabeparameter ====== |
+ | |||
+ | Um in einem Shell-Script oder einer Shell-Funktion deren Uebergabeparameter | ||
+ | zu erhalten, gibt es die Variablen $* und *@ . | ||
+ | Diese verhalten sich verschieden. Zusaetzlich variiert das Verhalten je nach Quoting. | ||
+ | |||
+ | Oft findet man die Verwendung von $* **obwohl** dies bei Paramtern mit Leerzeichen | ||
+ | Fehler erzeugt. | ||
+ | |||
+ | Tatsaechlich wird man in den allermeisten Faellen " | ||
+ | |||
+ | Samples: | ||
+ | |||
+ | < | ||
+ | for i in "2 3 4" "5 6 7" ; do echo $i ; done | ||
+ | -> | ||
+ | 2 3 4 | ||
+ | 5 6 7 | ||
+ | |||
+ | x () { for i in $* ; do echo $i; done; } | ||
+ | x "2 3 4" "5 6 7" | ||
+ | -> | ||
+ | 2 | ||
+ | 3 | ||
+ | 4 | ||
+ | 5 | ||
+ | 6 | ||
+ | 7 | ||
+ | |||
+ | x () { for i in " | ||
+ | x "2 3 4" "5 6 7" | ||
+ | -> | ||
+ | 2 3 4 5 6 7 | ||
+ | |||
+ | x () { for i in $@ ; do echo $i; done; } | ||
+ | x "2 3 4" "5 6 7" | ||
+ | -> | ||
+ | 2 | ||
+ | 3 | ||
+ | 4 | ||
+ | 5 | ||
+ | 6 | ||
+ | 7 | ||
+ | |||
+ | x () { for i in " | ||
+ | x "2 3 4" "5 6 7" | ||
+ | -> | ||
+ | 2 3 4 | ||
+ | 5 6 7 | ||
+ | </code> |
docs/dollarstern.1442207794.txt.gz · Last modified: 2015/09/14 07:16 by 146.185.234.48