Rechercher et remplacer chaine de caractères

Résolu
linkromain Messages postés 70 Date d'inscription   Statut Membre Dernière intervention   -  
linkromain Messages postés 70 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

Je cherche à faire une recherche et à remplacer une chaine de caractères précise dans tous mes .js avec la commande suivante :

find . -name "*.js" -type f -exec sed -i "s/var _0x4470/\//substitution_hack/g" {} \;

Cependant, cette dernière ne fonctionne pas et me renvoie l'erreur suivante :

sed: -e expression #1, char 18: unknown option to 's'

Quelqu'un pourrait il m'aider et me dire où ça bloque, s'il vous plait ?

Merci d'avance.

A voir également:

4 réponses

zipe31 Messages postés 36402 Date d'inscription   Statut Contributeur Dernière intervention   6 431
 
Salut,

Que veux-tu remplacer au juste ? Montres-nous un exemple concret du motif recherché dans son contexte.
0
linkromain Messages postés 70 Date d'inscription   Statut Membre Dernière intervention  
 
Merci de ton retour.

Je veux rechercher la chaine "var _0x4470" dans tous les fichiers .js qui se trouve dans plusieurs répertoires et pas le répertoire courant uniquement.
0
zipe31 Messages postés 36402 Date d'inscription   Statut Contributeur Dernière intervention   6 431
 
Oui ça j'avais compris, mais comme "sed" te sort une erreur par rapport à ta syntaxe, notamment un slash protégé par un anti-slah, je pensais qu'il y avait autre chose !!??

Sinon si ce n'est que ça :

sed -i "s/var _0x4470/substitution_hack/g"
0
linkromain Messages postés 70 Date d'inscription   Statut Membre Dernière intervention  
 
Mon anti-slash était surtout là pour remplacer ma chaine "var _0x4470" par ""//substitution_hack" étant donné que je souhaite mettre un caractère spécial.
0
zipe31 Messages postés 36402 Date d'inscription   Statut Contributeur Dernière intervention   6 431
 
Suffit de remplacer le délimiteur par défaut par un caractère quelconque ne se trouvant pas dans les chaines de substitution et de remplacement :

sed -i "s#var _0x4470#//substitution_hack#g"
0
linkromain Messages postés 70 Date d'inscription   Statut Membre Dernière intervention  
 
en effet je pensais au "#".

Merci je test de suite .
0
linkromain Messages postés 70 Date d'inscription   Statut Membre Dernière intervention  
 
Merci, c'était bien ça qui me bloquait.

En espérant que ce bout de code en aide d'autres.

Merci encore.
0