On Die, 08 Mai 2001, Jan Trippler wrote:
On Die, Mai 08, 2001 at 06:31:40 +0200, Marco_Jaeger@gmx.de wrote:
Die Syntax in Deiner sh-Variante - was soll das sein? Shell-Syntax ist das auf jeden Fall nicht.
Das ist eine bash-Erweiterung (also nicht sh). : ${ISS_HOME:=/iss} export ISS_HOME Das : ist dabei der leere Befehl, der noetig ist, damit dann die ${} expandierung gemacht wird (denn nur ${} wuerde expandiert werden und dann versucht auszufuehren...) Zu der ${VARIABLE:=WERT} Syntax findet sich in man bash (nach := suchen): ${parameter:=word} Assign Default Values. If parameter is unset or null, the expansion of word is assigned to parame ter. The value of parameter is then substituted. Positional parameters and special parameters may not be assigned to in this way. AFAIK ist '${parameter=word}' eine aequivalente Form. Ein Beispiel: $ echo $FOO $ : ${FOO=foo} $ echo $FOO foo $ : ${FOO=bar} $ echo $FOO foo $ : ${FOO:=bar} $ echo $FOO foo $ FOO=bar $ echo $FOO bar Der ganze Abschnitt EXPANSION ist lesenswert, besonders natuerlich der Abschnitt Parameter Expansion, in dem die diversen ${} Varianten erklaert werden. -dnh -- When you say "I wrote a program that crashed Windows", people just stare at you blankly and say "Hey, I got those with the system, *for free*". -Linus Torvalds