Hallo Marc, Bernd, Liste, Und nocheinmal melde ich mich ;) Ich habe noch ein wenig experimentiert und Marc musste auch noch Leerzeichen ersetzen, wodurch meine Version (mal wieder) fehlschlug. Ich habe dabei in einem script 5 Funktionen definiert in denen jew. eine Ersetzungsmethode verwendet wurde, wobei ich unten nur eine "Prototyp-funktion" angebe (das script gibts ggfs. per PM) und dann (per Schleife ueber alle Funktionen) die Dauer gemessen. ==== snip ==== #!/bin/bash VAR1=usr DIR="/usr/src/linux/include/linux/*" # (386 Dateien) <methode>() { for VARIN in `ls -d $DIR`; do for VAR2 in "dh" "dh/bin" "dh/temp/test dir/bin" \ "dh/temp dir/test dir/bin"; do <Ersetzung> #echo "$VAROUT" done done } time <methode> exit 0 ==== snap ==== Folgende Methoden habe ich verwendet (jew. in der Zeile <Ersetzung>): 1. Eine Variante nur mit sed: VAROUT=`echo $VARIN | sed s/$VAR1/"$(echo "$(echo "$VAR2" | \ sed s/"\/"/'\\\\'"\/"/g)" | sed s/"\ "/'\\\\'"\ "/g)"/` => real 0m53.727s user 0m7.380s sys 0m9.700s 2. Eine leichte Variation von 1 die schneller sein sollte: VAROUT=`echo $VARIN | sed s/$VAR1/"$(echo "$VAR2" | \ sed -e s/"\/"/'\\\\'"\/"/g -e s/"\ "/'\\\\'"\ "/g)"/` => real 0m51.885s user 0m4.530s sys 0m10.980s Hmja, schon besser... 3. Ein sed durch eine Shellersetzung ersetzt: VAROUT=`echo $VARIN | sed s/$VAR1/"$(echo -e "${VAR2//\//\\\\/}" | \ sed s/"\ "/'\\\\'"\ "/g)"/` => real 0m52.139s user 0m4.890s sys 0m10.720s Hm. Die muss wegen dem "echo |" langsamer sein... 4. Bernd Brodesser's Variante VAROUT=`echo $VARIN | sed "s|$VAR1|$VAR2|"` => real 0m18.392s user 0m2.610s sys 0m3.610s Aber Hallo! Das ist schon besser ;) 5. Meine "finale" Version ganz ohne sed: VAROUT="${VARIN//$VAR1/$VAR2}" => real 0m0.312s user 0m0.270s sys 0m0.020s kaum schlagbar :) CU David -- Aber was ist JavaScript? Eine Sprache zum Ausspionieren fremder Daten und zum Nerven anderer Leute (etwa durch Pop-up-windows). (Boris Piwinger in de.comm.infosystems.www.browsers) email: David@dhaller.de www: www.dhaller.de --------------------------------------------------------------------- To unsubscribe, e-mail: suse-linux-unsubscribe@suse.com For additional commands, e-mail: suse-linux-help@suse.com