je dois (afin de me simplifier la vie

) faire un petit script qui reboot un matériel réseau si un fichier log est en erreur.
en winat je ferai (si ce script fonctionne) tourner mon script toutes les 5 minutes (le system n'étant vraiment pas fiable)
Mes problèmes : le fichier log n'est vraiment pas bien fait

un p'tit exemple :
► Afficher le texte
25/08/2008 15:39.37 COM7 Etat=ERREUR_3, nbre erreurs consecutives : 5.
25/08/2008 15:39.37 COM10 Echec de l'ouverture du port.
25/08/2008 15:39.37 COM5 Etat=ERREUR_3, nbre erreurs consecutives : 5.
25/08/2008 15:39.37 COM10 Etat=ERREUR_3, nbre erreurs consecutives : 5.
25/08/2008 15:39.38 COM8 Echec de l'ouverture du port.
25/08/2008 15:39.38 COM8 Etat=ERREUR_3, nbre erreurs consecutives : 5.
25/08/2008 15:39.39 COM6 Echec de l'ouverture du port.
25/08/2008 15:39.39 COM6 Etat=ERREUR_3, nbre erreurs consecutives : 5.
25/08/2008 00:59.54 COM6 Ecoute du TC 420.
25/08/2008 00:59.56 COM7 Recherche des services à traiter.
25/08/2008 00:59.56 COM7 Recopie des informations destinées au TC 420.
25/08/2008 00:59.56 COM7 Fermeture du port réussie.
25/08/2008 00:59.56 COM7 Ouverture du port réussie.
25/08/2008 00:59.56 COM7 Ecoute du TC 420.
25/08/2008 00:59.57 COM17 Recherche des services à traiter.
25/08/2008 00:59.57 COM17 Recopie des informations destinées au TC 420.
25/08/2008 00:59.57 COM17 Fermeture du port réussie.
25/08/2008 00:59.57 COM17 Ouverture du port réussie.
25/08/2008 00:59.57 COM17 Ecoute du TC 420.
25/08/2008 01:00.04 COM8 Recherche des services à traiter.
Mon problème est de retrouver les erreurs depuis le passage du script et de rebooter le boitier (appeler COM) mais ma comparaison au niveau des dates ne fonctionne pas (comparer deux string c'est pas génial) y'a t il un moyen de le faire ?
Mon script :
► Afficher le texte
Code : Tout sélectionner
#include <file.au3>
;~ récupération de l'heure courante moins 5 minutes
$Now = @MDAY-1 & "/" & @MON & "/" & @YEAR & " " & @HOUR & ":" & @MIN -5 & ":" & @SEC
;~ déclaration des variable"
Dim $array
dim $Separator = " "
;-------------------------------------------
Dim $recherche = "Echec", $text
$filename = 'c:\journal.txt'
$filename2 = 'c:\erreurhestia.txt'
;-------------------------------------------
;~ fichier journal dans un tableau 1 colonne
_FileReadToArray($filename, $array)
For $X = 1 to $array[0]
;~ si la recherche est dans la ligne X alors je split le fichier avec le caractère espace
If StringInStr($array[$X], $recherche) Then
$Res = StringSplit($array[$X], $Separator)
$date = $Res[1]&" "&$Res[2]
;~ si la date du log et suppérieur à la date du jour moins 5 minutes alors je garde cette ligne
if $date > $Now then
;~ je met en mémoire le ou les com en erreur
;~ $text &= $Res[3]& @CRLF
$text &= $array[$X]& @CRLF
EndIf
EndIf
Next
FileWrite($filename2, $text)
(c'est ma premiere fois avec des tableaux alors si y'a moyen de corriger

)
sachant que ce petit bout de script est voulu
► Afficher le texte
If StringInStr($array[$X], $recherche) Then
$Res = StringSplit($array[$X], $Separator)
encore merci à tous et déjà merci à Tlem à qui j'ai déjà copier 95 % de ce script (date + tableau)