Bonjour à tous,
Je tente de faire fonctionner un script BATCH depuis plusieurs jours, j'ai bien avancé mais là je bloque.
Le script ce dessous va faire deux passages dans la boucle avec les fichiers suivants :
toto@toto.fr-tigre.xml.20316552.tar.gz
titi@titi.fr-tigre.xml.20316552.tar.gz
1)
Lors du premier passage tout ce passe bien dans les assignations SAUF pour la variable !MAIL! qui est utilisée
dans la commande blat.exe , cette variable n'est pas substituée et je ne comprends pas pourquoi
2)
Lors du traitement du second fichier rien ne va plus les variables ne sont plus affectées ce qui donne à l'exécution
Code BAT : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 Nom du fichier zip : !FICZIP! Nom du fichier tar : !FICTAR! D:\graphviz\SOSctm2graphviz\scripts>SET MAIL=!FICZIP! Le fichier spécifié est introuvable. gzip: D:\Control-M\Migration_6.1_to_6.3\xml_migre_graphviz_prod\TEST\!FICZIP!.gz : No such file or directory tar: Cannot open !FICTAR!: No such file or directory tar: Error is not recoverable: exiting now Impossible de trouver D:\Control-M\Migration_6.1_to_6.3\xml_migre_graphviz_prod\ TEST\!FICTAR! Le nom de fichier existe déjà, ou le fichier est introuvable.
Voici mon script
Code BAT : Sélectionner tout - Visualiser dans une fenêtre à part
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 SetLocal EnableDelayedExpansion EnableExtensions @echo off SET FIC_XML=D:\Control-M\Migration_6.1_to_6.3\xml_migre_graphviz_prod\TEST SET FIC_XML_OUT=%FIC_XML%\XML SET PDF_OUT=%FIC_XML%\PDF for %%a in (%FIC_XML%\*.gz) do ( SET FICZIP=%%~nxa SET FICTAR=%%~na echo Nom du fichier zip : !FICZIP! echo Nom du fichier tar : !FICTAR! REM Recuperation de l'adresse mail dans le nom du fichier for /f "tokens=1 delims=-" %%b in ("!FICZIP!") do SET MAIL=%%b REM dezip copy %FIC_XML%\!FICZIP! %PDF_OUT% gzip -df %FIC_XML%\!FICZIP! REM detar D: cd %FIC_XML% tar -xvf !FICTAR! del !FICTAR! move *.xml %FIC_XML_OUT% REM Creation des PDF à partir des xml , envoi par mail puis copie dans repertoire Organigrammes for %%i in (%FIC_XML_OUT%\*.xml) do ( D:\graphviz\SOSctm2graphviz\scripts\ctm2graphviz -DefTableFileName=%%i D:\graphviz\release\bin\dot -Tpdf D:\graphviz\SOSctm2graphviz\tmp\DOT\%%~ni.dot -o %PDF_OUT%\%%~ni.pdf copy %PDF_OUT%\%%~ni.pdf "V:\met\Exploit\Developpement exploit\Organigrammes\MVS\_Organigrammes_ESSAI" echo FIN DE COPY blat.exe -serverSMTP msg-store.ccmsa.msanet -t !MAIL! -subject "Organigramme %%~ni" -body "%%~ni" -attach %PDF_OUT%\%%~ni.pdf,%FIC_XML_OUT%\%%~ni.xml >> %TMP%\ctm_to_graphviz_error.log 2>&1 echo FIN DE BLAT del %FIC_XML_OUT%\%%~ni.xml del %PDF_OUT%\%%~ni.pdf pause ) pause ) endlocal
Partager