Effacer des caractères dans plusieurs fichier

Fermé
topinambour1 Messages postés 9 Date d'inscription vendredi 9 septembre 2011 Statut Membre Dernière intervention 30 novembre 2011 - 9 sept. 2011 à 13:08
zipe31 Messages postés 36402 Date d'inscription dimanche 7 novembre 2010 Statut Contributeur Dernière intervention 27 janvier 2021 - 9 sept. 2011 à 15:25
Bonjour,

J'ai une commande grep qui donne recursivement dans un repertoire
tous les fichiers utilisant les caractères: {dudule} et le n° de ligne .

Comment utiliser cette sortie pour effacer "{dudule}" dans tous ces fichiers?
merci d'avance por les reponses

A voir également:

2 réponses

zipe31 Messages postés 36402 Date d'inscription dimanche 7 novembre 2010 Statut Contributeur Dernière intervention 27 janvier 2021 6 418
9 sept. 2011 à 13:21
Salut,

Avec "sed" combiné à "find".

Un truc du genre :


find /chemin -type f -name "*" -exec sed -i '/{dudule}/{s///g}' {} \;

0
topinambour1 Messages postés 9 Date d'inscription vendredi 9 septembre 2011 Statut Membre Dernière intervention 30 novembre 2011
9 sept. 2011 à 15:11
ok merci

je pensais ecrire dans le script la sortie avec grep tel un tube
comme ça peut se faire en bash ou cms ou autres
en utilisant donc la sortie

mais
sed peut faire pareil!

nota:
De mon côté il faut mettre "PATH" !!
0
zipe31 Messages postés 36402 Date d'inscription dimanche 7 novembre 2010 Statut Contributeur Dernière intervention 27 janvier 2021 6 418
9 sept. 2011 à 15:25
je pensais ecrire dans le script la sortie avec grep tel un tube
comme ça peut se faire en bash ou cms ou autres
en utilisant donc la sortie

Ça peut se faire aussi :

grep -Rl '{dudule}' /chemin | xargs sed -i 's/{dudule}//g'
0