Bonjour la communauté.
cela fait déjà quelques jours que je suis sur cette problématique mais sans solution jusqu’à présent.
j’explique, j’ai un vulgaire powershell avec un fichier d’entrée (liste de serveurs) sur lequel je souhaite appliquer un traitement via une boucle foreach et, en récupérer le résultat en sortie dans un csv.
Code PowerShell : 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 Emplacement fichierSource $fileComputerNames = "E:\ReportXplanif\ServeursIUCR2K12.txt" # Write-Host $fileComputerNames # Emplacement fichierDestination $desti = "E:\ReportXplanif" # Write-Host $desti Foreach ($server in Get-Content $fileComputerNames) { $cmde = {Get-ScheduledTask | Where {$_.Principal.userid -eq "ZRES\XPLANIF"} | Get-ScheduledTaskInfo} Invoke-Command -ComputerName $server -ScriptBlock $cmde | Select @{LABEL='Serveur';EXPRESSION={$server}}, TaskName,LastRunTime,NextRunTime } Export-csv ($desti + "\XplanifTasks.csv") -Delimiter "," -NoTypeInformation
La boucle semble fonctionner puisque exécuter dans ise je la voix bien dérouler par contre, sur un fichier d’entrée de 100 ligne seule la dernière est exporter (les précédentes occurrences sont écrasées) pourquoi je ne sais pas. J’ai déjà essayé de réadapter le script en ajoutant des variables pour l’incrémentation (voir code si dessous) mais sans réussite.
Code PowerShell : 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 # Emplacement fichierSource $fileComputerNames = "E:\ReportXplanif\ServeursIUCR2K12.txt" # Write-Host $fileComputerNames # Emplacement fichierDestination $desti = "E:\ReportXplanif\" # Write-Host $desti $cmde = @() Foreach ($server in Get-Content $fileComputerNames) { $cmde += {Get-ScheduledTask | Where {$_.Principal.userid -eq "ZRES\XPLANIF"} | Get-ScheduledTaskInfo} Invoke-Command -ComputerName $server -ScriptBlock $cmde | Select @{LABEL='Serveur';EXPRESSION={$server}}, TaskName,LastRunTime,NextRunTime } $cmde | Export-csv ($desti + "\XplanifTasks.csv") -Delimiter "," -NoTypeInformation
Pourriez-vous y jeter un oeil et m’eclairer svp
PS :
J'ajoute que j'utilise powershell v4 et ou powershell V3
Partager