Creer un batch avec log de sortie daté

Habeas_Corpus -  
zavenger Messages postés 817 Statut Membre -
Bonjour,

j'ai crée un script qui m'extrait les journaux d'evenement windows a l'aide de l'outil PSloglist:

ECHO OFF

rem suppression du fichier d'export pré-existant
rem Recuperation des evenements Warning et Errors depuis le dernier jour -> System Log
(
psloglist @servers_list.txt -s -t ; -d 1 -f we
rem Recuperation des evenements Warning et Errors depuis le dernier jour -> Application Log
psloglist @servers_list.txt appl -s -t ; -d 1 -f we
rem redirection dans un fichier txt
)>>logs_event.txt

ça marche tres bien sauf que le fichier log crée est systematiquement ecrasé a chaque execution du script.

Peut-on faire en sorte que le fichier log crée le soit estampillé de la date du jour ? ? et si oui ... comment ?

Merci

1 réponse

zavenger Messages postés 817 Statut Membre 161
 
tu doit construire le nom de ton fichier en plusieur fois:

for /F %%i in ('DATE /T') do set DD=%%i
te donne la date du jour dans la variable DD

SET DD=%DD:~0,2%
Extrait les 2 premier caracteres de DD

ainsi de pour avoir jour, mois annee ...

tu batis donc le nom de ton fichier de log
0
Habeas_Corpus
 
merci pour ta reponse.

concretement, comment implementer cela dans mon script ? je place le for au debut ?

désolé de t'embeter mais ce n'est pas mon fort les batch !
0
zavenger Messages postés 817 Statut Membre 161 > Habeas_Corpus
 
donc au debut de ton script:

for /F %%i in ('DATE /T') do set DD=%%i

SET JJ=%DD:~0,2%
SET MM=%DD:~2,2%
SET AA=%DD:~4,4%

les 3 lignes recuperent les jours mois annees de la date (a toi de mette les bonnes valuers car cela depends de tes settings, mais tu dois bien voir le format de sortie de DATE /T dans un command prompt


SET logfile = %JJ%%MM%%AA%.log


et tu remplace ta redirection a la fin de ton script par

>> %logfile%
0
Habeas_Corpus > zavenger Messages postés 817 Statut Membre
 
OK, merci


dans mon cas : Date /t donne Mon 04/21/2008

donc for /F %%i in ('DATE /T') do set DD=%%i

SET JJ=%DD:~1,2% c'est ça ?

a quoi ça correspond ces chiffres "1,2"

encore merci, j'essaie de comprendre le raisonnement
0
zavenger Messages postés 817 Statut Membre 161 > Habeas_Corpus
 
Dans ton cas DD:~1,2 va extraire 2 caractères de la chaine DD en commencant au caractère 1 (attention la chaine commence au caractere 0)
0