Peut être que je passe a coté de la vraie demande mais pour moi:
1. Appel du script PS depuis un batch
2. Dans ce batch, une boucle FOR /F qui parcours chaque ligne de ton fichier texte contenant tes serveurs
3. Les paramètres passés au script PS se récupèrent dans un Array ($args de mémmoire, indicé à partir de 0)
Ca donnerait donc
batch.bat
Code :
- for /f %%i (C:\listeServeur.txt) (
- powershell .\tonscript.ps1 %%i
- )
|
tonscript.ps1
Code :
- $Serveur = $args[0]
|
Après il y a sans doute plus simple, mais je suppose que c'est un traitement récurrent donc qui va être exécuté par une scheduled task, donc je mettrait ça dans un batch.
Sinon si tu veux tout faire coté PowerShell, je pense qu'avec ta classe System.IO.File tu peux t'en sortir, avec une instance de StreamReader pour ouvrir ton fichier listeServeur.txt en lecture seule, puis avec une boucle de type TantQue, parcrourir ligne par ligne ton fichier texte et assigner la valeur de la ligne à une variable dans ton script.
http://msdn.microsoft.com/fr-fr/li [...] .100).aspx