Bonjour,
Je cherche à faire un script VBS qui dans un repertoire recupere tous les fichiers et les met dans un tableu.. il stocke les infos dans un tableau ( nom du fichier + date de creation du fichier).. apres il teste la date de création la plus récente des fichiers... Et puis il renvoie un message de d'erreur ( ou CRITICAL car c'est pour faire du Nagios) dans le cas le ficher le plus récent à 24h.. Pour le moment, j'ai un script qui teste si un fichier dans le repertoire a plus de 24h mais ca bloque quand jai plusieurs fichiers car il renvoie toujours un message d'erreur car il ya des fichiers qui s'accumulent..
Je vous présente mon script :
Je précise juste que ce sont des fichiers .bak sous format xxx_20080609xxxx.bak avec "20080609" qui est la date de création du fichier.....
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
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 <script language="VBScript"> If Wscript.Arguments.Named.Exists("h") Or Wscript.Arguments.Count = 0 Then Wscript.Echo "Plugin help screen:" Wscript.Arguments.ShowUsage() Wscript.Quit(0) End If ' Déclaration des variables et constantes '---------------------------------------- strFolder = Wscript.Arguments.Unnamed.Item(0) strMin = wscript.Arguments.Unnamed.Item(1) strMin = Int(strMin) Const intOK = 0 Const intWarning = 1 Const intCritical = 2 Const intUnknown = 3 'Début des tests '--------------- Dim objFSO Set objFSO = CreateObject("Scripting.FileSystemObject") If objFSO.FolderExists(strFolder) Then 'Vérification si le répertoire existe Set objFolder = objFSO.GetFolder(strFolder) set colFiles = objFolder.Files For Each objFile in colFiles If DateDiff("n",objFile.DateLastModified,Now())>strMin Then retour=retour+1 End If Next If retour>0 then WScript.Echo "Fileage CRITICAL - des fichiers ont plus de " & strMin & " Minutes" Wscript.Quit(intCritical) Else WScript.Echo "Fileage OK - Tous les fichiers ont moins de " & strMin & " Minutes" WScript.Quit(intOK) End If Else Wscript.Echo "Fileage Unknown - le dossier spécifie n existe pas" Wscript.Quit(intUnknown) End If </script>
Besoin Urgent SVP...
Merci
Partager