Bonjours,
Voila j'aimerais savoir pourquoi quand je lance ce script :
Il me dis que la date a plus de deux jours alors que ce n'est pas vrai. J'ai voulu vérifier ce que contenait la variable $mtime, et elle est vide donc il ne récupère rien du fichier log. Ma seule question : Pourquoi ?
Code : 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 use strict; my $FicLog = ""; my $Infile = 'C:/partage/MT/am_check_pabxcav.ini'; open IN, "< $Infile" or die "Can't open $Infile : $!"; ($FicLog) = <IN>; chomp($FicLog); my $TimeSecond = time(); (my $dev,my $ino,my $mode,my $nlink,my $uid,my $gid,my $rdev,my $size,my $atime,my $mtime,my $ctime,my $blksize,my $blocks) = stat("$FicLog"); if ($blksize eq 0) { print "ERREUR SUR LA TAIILE DU FICHIER $FicLog"; exit 2; } elsif ($TimeSecond > ($mtime + 172800)) { # 172800 = 48 Heures en secondes print "Le fichier a plus de deux jours"; exit 2; }
J'ai pensé que cela pouvais venir du fait que le script ouvre un fichier ini pour trouver le fichier log (l'adresse du fichier log est dans le fichier ini) mais mon problème c'est que je suis obligé de passer par un fichier ini, donc si mon problème vient de là comment faire pour que cela fonctionne ?
Je vous remercie de votre futur aide
Ps: Oui je sais, pour ce qui m'ont aidé c'est le même script que la dernière fois sauf que la il me faut la date de modification du fichier, je sais que je suis sur la bonne voie mais il me faut un petit coup de pouce ^^
Partager