Hallo, Am Fri, 21 Jan 2005, Jan Trippler schrieb:
Am Freitag, 21. Januar 2005 18:38 schrieb Ulrich Hiller:
BASEDIR=`echo $PXPATH | sed "s/(/\\(/g"`
Aud die Schnelle hat das bei mir gefruchtet:
BASEDIR=`echo $PXPATH | sed "s/(/\\\(/g"`
oder: BASEDIR=`echo $PXPATH | sed 's/(/\\(/g'`
Oder gleich (um der Folgefrage vorzugreifen): BASEDIR="`echo \"$PXPATH\" | sed 's/\([()]\)/\\\\\1/g'`"
Aber frag mich nicht wieso. Ich bin da selber noch am Gruebeln. In diversen Unterlagen habe ich nichts dazu gefunden.
Das liegt daran, wie "" bzw. '' den umschlossenen Inhalt vor dem Auswerten durch die Shell schützen. Näheres dazu sollte in man bash zu finden sein.
Und wie sed das dann auch noch auswertet... ;) -- Die Steuern müssen nicht gesenkt werden, die Steuern müssen bezahlt werden! -- Volker Pispers in "Scheibenwischer"