Hans-Wilhelm hat geschrieben:Das hier
Code: Alles auswählen
else
sed -e 's/http://example.com/http://beispiel.de/g' "$i" > "$i.tmp" && mv -f "$i.tmp" "$i"
fi
done
will wegen des
http:// nicht.
Weiss jemand wie ich das realisiere? Ich denke mal das muss irgendwie "escaped" werden, Aber wie?
Ja, du musst die Slashes escapen:
Code: Alles auswählen
else
sed -e 's/http:\/\/example.com/http:\/\/beispiel.de/g' "$i" > "$i.tmp" && mv -f "$i.tmp" "$i"
fi
done
Oder besser, wie rendegast schon gesagt hat, einfach andere Trenner verwenden:
Code: Alles auswählen
else
sed -e 's@http://example.com@http://beispiel.de@g' "$i" > "$i.tmp" && mv -f "$i.tmp" "$i"
fi
done
btw: da die Option `-i' nur von gsed unterstützt wird, nicht aber von anderen Implementierungen, ist es empfehlenswert sie nicht zu verwenden. Somit ist dein Vorgehen diesbezüglich richtig.