Exécuter un script en boucle sous conditions
Bonjour,
Je suis en train de mettre en place un script que je vais intégrer dans mon outil de gestion de parc.
Avec votre aide (déjà merci à Cachlab pour une partie du script), j'ai pu commencer à y travailler, mais là j'ai de nouveau besoin d'un coup de main.
Voici mon dilemme.
J'ai un script qui lit le contenu d'un fichier texte, pour en ressortir une variable qui sera réutilisée par la suite.
Pour un fichier c'est good.
Maintenant, pour aller jusqu'au bout du raisonnement, j'aurai besoin d'utiliser ce script en boucle sur tous les fichiers d'un répertoire. Ces fichiers auront un nom aléatoire basé sur un GUID (qu'on peut réutiliser ?), et les contenus des fichiers ont la même structure (propriete=valeur, 1 seule ligne). Ces fichiers proviennent des postes du parc info, qui envoient ce petit texte dans un répertoire partagé pour traitement.
Mon idée serait donc de lancer ce script en boucle sur chaque fichier, s'il y en a plusieurs, et de supprimer ces fichiers jusqu'à vider le répertoire.
Avez vous des idées ?
Voici mon début de code, sachant que je suis complètement novice en scripting, et que toute suggestion est la bienvenue.
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
| Const ForReading = 1
Dim oFSO, variable(2)
Set OFSO = WScript.CreateObject("Scripting.FileSystemObject")
fichier_guid = "S:\Temp\Guid.txt"
Set lect = oFso.OpenTextFile(fichier_guid, ForReading)
While Not lect.AtEndOfStream
Ligne = lect.ReadLine
propriete = Left(Ligne,InStrRev(Ligne,"="))
value = right(Ligne, len(Ligne) - len(Propriete))
if propriete = "GUID=" Then variable(1) = value
Wend
lect.close
Set objShell = WScript.CreateObject("WScript.Shell")
objShell.Run ("S:\mon_program.exe cmd:DeleteItem itemguid:" & value) |