$csv = Import-Csv -Path "D:\Liste_de_serveurs.csv" -Delimiter ";" $jobs = @() #Création d'un tableau vide Remove-Item -Path "D:\fichier_resultats.txt" # Lancement de tous les jobs ForEach ($Lignecsv in $csv) { $unjob = Invoke-Command -AsJob -ComputerName $Lignecsv.Serveur -ScriptBlock { Test-Path "D:\groupes" #Retourne $true ou $false } #On crée un objet $jobs qui référencie le job et le serveur associé $jobs += [PSCustomObject]@{ Job = $unjob Serveur = $Lignecsv.Serveur } } # Attente de la fin de tous les jobs. $jobs.Job retourne tous les jobs $jobs.Job | Wait-Job | Out-Null # Traitement des résultats ForEach ($item in $jobs) { $resultat = Receive-Job -Job $item.Job if ($resultat -eq $true) { Add-Content -Path "D:\fichier_resultats.txt" -Value $item.Serveur } # Nettoyage du job Remove-Job -Job $item.Job }