Bernhard Bittner wrote:
Am 05.06.2012, 09:52 Uhr, schrieb Thomas Köhler jean-luc@picard.franken.de:
Hallo Thomas,
snip
find /home/kopie_von_vorlage -type f -exec sh -c "grep -q /home/vorlage '"{}"' && sed -i 's#/home/vorlage#/home/individuell#g' '"{}"'" ;
Klingt besser, thx :-)
Allerdings stolpert grep noch über Leerzeichen in Unterordnern, woraus "Datei oder Verzeichnis nicht gefunden" resultiert.
Weißt Du hier auch noch Abhilfe?
Ja, wirklich Zeichen für Zeichen copy&pasten und nicht irgendwas weglassen :-)
find /home/kopie_von_vorlage -type f -exec sh -c "grep -q /home/vorlage '"{}"' && sed -i 's#/home/vorlage#/home/individuell#g' '"{}"'" ; ^ *^ ^* * * *^ ^*^
Die hier mit ^ markierten " begrenzen das (aus mehreren Teilen zusammengesetzen) an sh übergebene Kommando, während die mit * markierten ' dann INNERHALB des am Ende von sh ausgeführten Kommandos den Dateinamen umschließen, womit Leerzeichen im Pfad kein Problem sind. Wenn du einen Fehler bekommst, hast du zuviel am Beispiel abgewandelt, und zwar an entscheidender Stelle, oder du hast ' in Dateinamen - pfui :-)
Danke & Grüße,
Bernhard
Ciao, Thomas