[R] Problème avec format de date

Aide et conseils concernant AutoIt et ses outils.
Règles du forum
.
Répondre
Avatar du membre
Yogui
Niveau 9
Niveau 9
Messages : 689
Enregistré le : ven. 18 avr. 2008 17:29
Status : Hors ligne

[R] Problème avec format de date

#1

Message par Yogui »

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
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


(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
encore merci à tous et déjà merci à Tlem à qui j'ai déjà copier 95 % de ce script (date + tableau)
Modifié en dernier par Yogui le jeu. 28 août 2008 08:01, modifié 1 fois.
Avatar du membre
Yogui
Niveau 9
Niveau 9
Messages : 689
Enregistré le : ven. 18 avr. 2008 17:29
Status : Hors ligne

Re: [..] Problème avec format de date

#2

Message par Yogui »

j'ai tenté avec _DateDiff

je ne suis pas certain de savoir le faire fonctionner
Avatar du membre
Tlem
Site Admin
Site Admin
Messages : 11791
Enregistré le : ven. 20 juil. 2007 21:00
Localisation : Bordeaux
Status : Hors ligne

Re: [..] Problème avec format de date

#3

Message par Tlem »

Comme ceci ?

Code : Tout sélectionner

#Include <Date.au3>

$Log = "25/08/2008 15:39.37 COM7 Etat=ERREUR_3, nbre erreurs consecutives : 5."
$Res = StringSplit($Log, " ")

; Traitement N°1 : Mettre la date au format Anglais.
$aDate = StringSplit($Res[1], "/")
;_ArrayDisplay($aDate,"")
$Date = $aDate[3] & "/" & $aDate[2] & "/" & $aDate[1]

; Traitement N°2 : Mettre l'heure au bon format.
$Time = StringReplace($Res[2], ".", ":")

; On compare la date du LOG à la date actuelle. Si > à 5 on affiche la ligne de LOG.
If _DateDiff('n',$Date & " " & $Time,_NowCalc()) > 5 Then
    MsgBox(64, "Info", $Log)
EndIf
Thierry

Rechercher sur le forum ----- Les règles du forum
Le "ça ne marche pas" est une conséquence commune découlant de beaucoup trop de raisons potentielles ...

Une idée ne peut pas appartenir à quelqu'un. (Albert Jacquard) tiré du documentaire "Copié n'est pas volé".
Avatar du membre
Yogui
Niveau 9
Niveau 9
Messages : 689
Enregistré le : ven. 18 avr. 2008 17:29
Status : Hors ligne

Re: [..] Problème avec format de date

#4

Message par Yogui »

MERCI

c'est exactement comme ceci parfait... seule petite erreur... et de ma part :oops:

If _DateDiff('n',$Date & " " & $Time,_NowCalc()) > 5 Then

n'est pas correcte pour la comparaison il faut plutot

If _DateDiff('n',$Date & " " & $Time,_NowCalc()) < 5 Then

il ne me reste plus qu'a comparer les numéros des com avec leurs IP et de lancer un reboot :)

Encore merci
Répondre