Am Montag, 17. Januar 2005 14:03 schrieb Andreas Feile:
Stephan Eickschen, Montag, 17. Januar 2005 13:28:
ABSENDER=`echo $SENDER | sed 's/+/00' | sed 's/ //g`
Stimmt das wirklich so? Muà das nicht eher
ABSENDER=`echo $SENDER | sed 's/+/00' | sed 's/ //g'`
heiÃen?
Natürlich
KÃŒrzer geht es mit (nur einem sed via): ABSENDER=`echo $SENDER | sed 's/+/00;s/ //g`
Und fehlt nicht auch hier ein Hochkomma?
Sicherlich
Hab von sed keine Ahnung, kann aber eine solche Konstruktion in anderem Zusammenhang grad gut brauchen.
Da brauchst Du auch von sed keine Ahnung zu haben, da die Hochkommata hier zur Syntax der shell gehören. sed bekommt sie nicht zu Gesicht, weil die shell sie wegnimmt. Wenn ich es hier recht sehe, wird hier lediglich jeweils ein Leerzeichen maskiert, die anderen Zeichen bedürfen keiner Maskierung. Allerdings ist es Sinnvoll, bei sed immer Hochkommata zu verwenden, da zur Syntax von sed viele Zeichen gehören, die in der shell eine besondere Bedeutung haben, da wird zu schnell mal eins übersehen, besonders wenn später etwas verändert wird. Bernd