Recherche d'accents dans fichiers (bat)

Fermé
pedro - 14 avril 2010 à 09:33
 pedro - 14 avril 2010 à 16:47
Bonjour,

Après avoir recherché sur la toile des réponses à mon problème, je poste ici.
Comme mon titre l'indique, j'ai besoin de faire une recherche sur une arborescence de fichiers. Cette recherche consiste à repérer si au moins un des fichiers (je dois chercher dans toutes les jsp) de cette arborescence contient un accent (pas dans le nom, je parle bien du contenu du fichier).
Pour cela, je pense qu'un .bat serait suffisant mais je débute avec batch et aurais besoin d'un petit coup de main :$

Merci d'avance
A voir également:

12 réponses

dubcek Messages postés 18718 Date d'inscription lundi 15 janvier 2007 Statut Contributeur Dernière intervention 22 mars 2024 5 615
14 avril 2010 à 12:23
hello
DOS reconnait mal les accents, suivant comment le fichier a été créé, findstr /m/s "é" *.* peut fonctionner mais ce n'est pas le cas en général. Si on veut chercher vélo, il faut faire findstr /m/s "v.lo" *.* le . représentant 1 caractère quelconque
0
Salut et Merci de ta réponse :)

Le problème est que je ne cherche pas particulièrement un mot mais une occurrence de n'importe quel accent possible ("é", "è", "à", "ù",...) dans n'importe laquelle de mes jsp (l'idée étant de valider le fait qu'aucune de mes jsp ne contient de "caractères à accent")

Quelqu'un a une idée ?
0
dubcek Messages postés 18718 Date d'inscription lundi 15 janvier 2007 Statut Contributeur Dernière intervention 22 mars 2024 5 615
14 avril 2010 à 14:06
essaye quand même pour être sûr
findstr /m/s "[éàèùöüôêû]" *.*
entre [] il va chercher chaque caractère
0
Bon j'ai essayé ça
findstr /m/s "[éàèùöüôêû]" *.jsp
Il m'a trouvé 4 jsp dans lesquelles je n'ai aucun accent parmi ceux que je lui demande de trouver.
Par contre, il ne trouve pas une .jsp bidon dans laquelle j'ai juste mis un "é"...

Je ne comprends pas :(
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
dubcek Messages postés 18718 Date d'inscription lundi 15 janvier 2007 Statut Contributeur Dernière intervention 22 mars 2024 5 615
Modifié par dubcek le 14/04/2010 à 15:27
c'est DOS !!
la commande Unix grep pour Windows fonctionne
grep -lr "[éàè]" *.*
l pour avoir le nom du fichier, r pour récursif dans les sous répertoires
http://gnuwin32.sourceforge.net/packages/grep.htm
prendre Binaries et Dependencies
extraire des bin :
grep.exe
libiconv2.dll
libintl3.dll
pcre3.dll
regex2.dll
0
Je ne comprends pas ce que tu veux dire par "C'est DOS!!" O_o
Les .jsp contiennent du texte oui (c'est de la programmation comme une autre, je ne vois pas pourquoi tu me demandes ça ?)
Pour grep par contre, j'ai des restrictions sur le téléchargement au boulot...
Merci de ton coup de main en tout cas !
0
dubcek Messages postés 18718 Date d'inscription lundi 15 janvier 2007 Statut Contributeur Dernière intervention 22 mars 2024 5 615
14 avril 2010 à 15:38
je ne connais pas les fichiers .jsp
j'ai créé un fichier plein de é avec le bloc-note, findstr ne trouve rien.
je crée un fichier avec echo ééééé > fichier ou avec edit fichier, findstr trouve bien les é
0
crée un .jsp, edite le avec le bloc note ou Notepad++ ou autre, ajoute lui juste un "é"... je serai étonné que ton findstr fonctionne
0
dubcek Messages postés 18718 Date d'inscription lundi 15 janvier 2007 Statut Contributeur Dernière intervention 22 mars 2024 5 615
14 avril 2010 à 15:49
il ne trouvera rien, tous les accents qui n'ont pas été entrés dans DOS ne sont pas trouvés
je n'ai pas de solution, à moins d'écrire un bout de code VBS
0
"tous les accents qui n'ont pas été entrés dans DOS ne sont pas trouvés"
Tu peux m'en dire plus à propos de ça ?
0
dubcek Messages postés 18718 Date d'inscription lundi 15 janvier 2007 Statut Contributeur Dernière intervention 22 mars 2024 5 615
14 avril 2010 à 16:03
c'est les exemples que j'ai indiqué au post #7
tu prends un .jsp, tu l'ouvres avec edit fichier.jsp tu insères des accents, tu enregistres : Alt puis f puis e, tu sors avec Alt puis f puis q
findstr les trouvera
0
arf, c'est trop con... la ligne marche à merveille sinon :(
C'est mort pour un batch alors ...
Merci à toi
0