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 41 42 43 44 45 46 47 48 49 50 51
| @echo off
goto _jumpInfo
================================================================
Le Script va déclencher un compte à rebours %c% si
dossier %Source% ne contient pas de fichiers Xml..
à la présence de fichiers Xml le script va chercher s'il y a
une balise <id> et va déclencher un autre compte à rebours %n%
si l'<id> n'est pas présente..
Par contre si l'ID est présente, son contenu va être le nouveau
nom du fichier Xml, et va ensuite être déplacer vers le dossier
%dest%
Exemple: <id>Storage 3</id> ---> Storage.xml
=================================================================
:_jumpInfo
Setlocal enableextensions&Set /a c=5,n=5
:_répertoire Source
Set source=c:\walid2
:_dossier de destination le créer s'il n'existe pas
Set dest=D:\dest
If not Exist "%dest%" Md "%dest%"
Pushd "%source%"
:Loop
If not exist "*.xml" (for %%V In (CALL Goto:EOF) Do %%V :NotExist)
(FindStr "<id>" *.xml >NUL) || (GOTO:NoTag)
cls&dir /a-d/b "*.xml"&echo/*******************************&Echo/
for /f "tokens=1,2 delims=:" %%A In ('findstr "<id>" *.xml') do (
Set _="%%B"
Call Set _=%%_:^<id^>=#%%
Call Set _=%%_:^</id^>=#%%
for /f "tokens=2 delims=#" %%a In ('Call echo.%%_%%^|more') do (
Move /Y "%%~fA" "%dest%\%%a.xml"
echo "%%~fA" ------^> %%a.xml))
Popd
Pause&Goto:eof
:NoTag
cls&echo/&echo PAS DE BALISE ^<id^>: %n%
Ping -n 5 LocalHost >nul
Set /a n-=1
If %n% neq 0 goto:Loop
Goto:eof
:NotExist
cls&echo/&echo PAS DE FICHIERS XML: %c%
Ping -n 5 LocalHost >nul
Set /a c-=1
If %c% neq 0 goto:Loop |
Partager