Petit Up sur un fichier ça fonctionne
<F930FTTAB F930KY="F094REPORT" L930901MSG="F1T0LQJPR0P4KM8W003D2" F930GESTFT="2" F930NIV="9" F930NOMTABLE="F094REPORT" F930PERSO="1" ..... F901TI8ORI=""></F930FTTAB>
Maintenant il faudrait rechercher dans tout mon dossier et sous dossier tout ce qui est *.xml
Et optimiser le code de façon à exclure tout ce qui n'est pas F090PERSO=
Exemple de balise inutile :
<FTS1RUBRIQUE FTS1KY="ZMDISPO_SEUILMINI" ..... F901ACTIF="2" K901TO2QUALTRAD="" F901TI8ORI=""></FTS1RUBRIQUE>
Car j'ai des fichiers avec plus de 50.000 lignes ce qui est long en terme de parcours.$
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40
| :: Recherche dans un dossier parmis tous les fichiers xml present
:: Si l'on trouve le parametre perso=1
@echo off
setlocal enabledelayedexpansion
:: On definis les fichiers a scanner
:: Et la chaine a rechercher
REM set "Path=C:\Users\ccordier\Documents\RechercheXMLPerso\"
set Files="F930FTTAB1.xml"
set FindWord=F930PERSO="1"
echo ----------------------------------
echo -- Fichiers --
echo ----------------------------------
REM echo Path %Path%
echo Files %Files%
REM echo FindWord %FindWord%
echo ----------------------------------
echo -- Recherche dans les XML --
echo ----------------------------------
for /f "tokens=7 delims=/ " %%i in ('type %Files%') do (
set Array=%%i
REM echo Array !Array!
if !Array!==%FindWord% (
echo %FindWord% Trouver
dir %Files% /b
echo ----------------------------------
) else (
echo Pas de %FindWord%
echo ----------------------------------
)
)
echo -- Fin --
echo ----------------------------------
pause |
Partager