Bonjour,
je suis sous debian 7,
je dois faire des recherche / remplacement dans 600 fichiers qui se trouvent dans différents répertoires.
Quel logiciel me permet de faire cela, car nano et autres ne traitent qu'un seul fichier à la fois.
Merci
Bonjour,
je suis sous debian 7,
je dois faire des recherche / remplacement dans 600 fichiers qui se trouvent dans différents répertoires.
Quel logiciel me permet de faire cela, car nano et autres ne traitent qu'un seul fichier à la fois.
Merci
une combinaison de plusieurs outils comme find, awk, sed feront tout à fait l'affaire.
Merci
donc
Mes questions :
Code : Sélectionner tout - Visualiser dans une fenêtre à part find . -exec sed -i 's/chaine_recherchee/nouvelle_chaine/g' {} \;
- cela remplace t il aussi les dans les noms de fichiers et répertoires car j'ai besoin de cela.
- comment faire pour effectuer une recherche avec et sans CASSE : mon problème et que je dois respecter la casse présente ex si PrEqsdf alors je dois obtenir SuBqsdf
si je fais un sed -e, j'obtiens bien la liste des lignes sans modification ?
J'ai tenté sur une copie de mon répertoire
avec et sans sudo
mais que cela soit avec -i ou -e le résultat n'est pas concluant
avec sed -e j'obtiens des caractères bizarre
avec sed -i : impossible d'éditer ...... ce n'est pas un fichier régulier
Donc où je me suis trompé.
et comment avoir dans un premier temps la liste des fichiers (avec si possible la ligne et son numéro où se trouve le matching, cele me permettra de contrôler par la suite)
Ex de remplacement
MONMOT -> NOUVEAUMOT
MONmot -> NOUVEAUmot
Monmot -> Nouveaumot
...
Bonjour
Connaitre le rôle des commandes évite de les utiliser pour rien. sudo exécute une commande sous le compte d'un autre. Si la commande est foireuse à l'origine, cela ne change rien.
Ben je sais pas. Peut-être que t'as pas réfléchi (hé oui, là on ne peut rien pour toi) que ton find te retournait aussi des répertoires (et aussi les pipes et fichiers spéciaux et les sockets)...
grep -ny
Code bash : Sélectionner tout - Visualiser dans une fenêtre à part sed -e "s/MONMOT/NOUVEAUMOT/g" -e "s/MONmot/NOUVEAUmot/g" -e "s/Monmot/Nouveaumot/g"
Rien n'interdit de faire du nano (ou autre) automatisé en script
Code bash : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 find ... | while read f do nano "$f" << _EOT_ 1>/dev/null 2>&1 commandes nano commandes nano commandes nano _EOT_ done
Mon Tutoriel sur la programmation «Python»
Mon Tutoriel sur la programmation «Shell»
Sinon il y en a pleins d'autres. N'oubliez pas non plus les différentes faq disponibles sur ce site
Et on poste ses codes entre balises [code] et [/code]
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager