Bonjour,
Voici ce que j'essaie de faire : Appliquer un xslt sur des fichiers xml. Les fichiers XML doivent avoir pour nom "LOOMArt_*.xml". Le XSLT a pour but d'éclater le fichier. Les fichiers éclaté auront pour nom LOOMArt_xxxxx_Split1.xml, LOOMArt_xxxxx_Split2.xml ... Je souhaite donc avec un batch lancé par .bat, pour chaque fichier qui a pour nom "LOOMArt_*.xml" mais dont le nom ne contient pas le terme "Split", lancer un xslt à partir de la commande : java -jar saxon9he.jar nomFichierXML Split.xslt.
J'arrive à parcourir la liste des fichiers avec une boucle mais je n'arrive pas à identifier ceux qui contiennent "Split" dans leur nom.
Avec ce premier bout de code, j'obtiens bien dans le fichier listeFichiers.txt la liste des fichiers à tester.
Code Batch : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 for %%X in (LOOMArt_*.xml) do ( echo %%X >> C:\Temp\listeFichiers.txt )
Le problème c'est que lorsque j'exécute le code suivant :
Code Batch : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 for %%X in (LOOMArt_*.xml) do ( IF (echo %%X | find /C "Split") == 0 do (echo %%X >> C:\Temp\listeFichiers.txt) )
Le fichier listeFichiers.txt n'est pas créé. Et la variable %%X n'est pas reconnue. Voici le résulte que j'ai dans l'invite de commande windows (Pour info, je lance ces commandes via un fichier .bat) :
Code Batch : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 C:\Temp>split.bat %X était inattendu. C:\Temp> IF (echo %X | find /C "Split") == 0 do (echo %X >> C:\Temp\listeFichiers.txt)
Malgré de nombreuses recherches, je ne comprends pas pourquoi le %%X est reconnu dans un cas et pas dans l'autre et je ne trouve pas de solutions à mon problème ... Je m'en remets donc à la communauté.
J'espère avoir été le plus clair possible. Merci d'avance pour votre aide.
Partager