Bonjour,

je souhaite remplacer dans un ensemble de fichiers une chaine de caractère (un chemin d'accès) par une autre chaine (un autre chemin). Je suis arrivé à cette solution à base de find/sed/redirection :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
find . -type f -name *.pbxproj -exec sh -c 'sed "s|my/old/path|my/new/path|" < {} > {}' \;
Le résultat me donne des fichiers vides (l'output est créé avant l'input visiblement)
Si je change la redirection > {} par > {}.new par exemple, alors j'ai bien mes modifications souhaitées dans les fichiers .new, mais je souhaite avoir ces modifications dans les fichiers originaux.

Ou est-ce que je rate un truc ?
En vous remerciant