Wie finde und ersetze ich eine Zeichenkette auf der Kommandozeile in mehreren Dateien unter Unix?
Antworten
Zu viele Anzeigen?
Stan
Punkte
8234
Wie die Zombie-Lösung (und schneller, nehme ich an), aber mit sed (Standard bei vielen Distributionen und OSX) anstelle von Perl :
find . -name '*.py' | xargs sed -i .bak 's/foo/bar/g'
Dies ersetzt alle foo Vorkommen in Ihren Python-Dateien unterhalb des aktuellen Verzeichnisses mit bar und erstellen Sie für jede Datei ein Backup mit der Option .py.bak Erweiterung.
Und um die .bak-Dateien zu entfernen:
find . -name "*.bak" -delete
DigitalRoss
Punkte
138823
XavierCLL
Punkte
1033
ghostdog74
Punkte
305138