Bonjour,
Connaitriez vous une commande ou soft qui permet de modifier une occurence dans plusieurs fichiers ?
Par exemple j'aimerai changer le nom d'un define dans tout les fichiers de mon projet.
Merci pour votre aide !
Version imprimable
Bonjour,
Connaitriez vous une commande ou soft qui permet de modifier une occurence dans plusieurs fichiers ?
Par exemple j'aimerai changer le nom d'un define dans tout les fichiers de mon projet.
Merci pour votre aide !
ou, simplementCode:find ... -exec sed 's/anc/nouv/g' '{}' \;
...Code:sed 's/anc/nouv/g' /chem1/*.ext /chem2/*.ext
?
Oups ! J'ai oublié l'option -i pour sed, qui n'est disponible que pour GNU/sed.Citation:
Envoyé par Sve@r
La commande find ... -exec ne fonctionnera aussi simplement qu'avec cette version.
Pour les versions non-GNU de sed :ou, de la même manièreCode:find ... -exec bash -c 'sed 's/anc/nouv/g' "$1" > "$1.tmp"; mv "$1.tmp" "$1"' '{}' '{}' \;
Code:
1
2
3
4 for file in /chem1/*.ext /chem2/*.ext do sed 's/anc/nouv/g' "$file" > "$file.tmp" mv "$file.tmp" "$file" done