PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Zeichenkette in mehreren Dateien ändern



zwerg2003
31-08-2008, 10:25
Hallo,
ich möchte einen Text in mehreren Dateien suchen und in der kompletten Datei ersetzen.
Soweit habe ich es schon hingebkommen, der Text wird in den Dateien ersetzt und auf die shell ausgegeben. Ich bekomme ihn aber nicht in die ursprüngliche Datei geschrieben.



cat `find . -name \*.php` | sed 's/Test/Test01/g'


ich dachte damit könnte ich ihn in die Datei zurückschreiben, hat aber leider nicht funktioniert:


cat `find . -name \*.php` | sed 's/Test/Test01/g w'`find . -name \*.php`


hat jemand einen Tipp für mich?
Danke im voraus

ContainerDriver
31-08-2008, 11:10
Hallo,

1. sed kann die Dateien direkt verarbeiten, du brauchst also nicht die Ausgabe von cat weiterpipen;
2. schau dir mal die Option -i von sed an, die sollte genau das tun, was du willst.

Gruß, Florian