Question Problème pour faire du Threads
- MARTINEZ
- Auteur du sujet
- Visiteur
il y a 1 an 7 mois #33150
par MARTINEZ
Problème pour faire du Threads a été créé par MARTINEZ
Bonjour,
Je suis en powershell 5.1
Voici mon besoin: J'aimerai récupéré dans tous mes domaines, tous les users qui ont le nom "<Nom>" et j'aimerai récuéprer les informations suivantes (Nom, Prenom, Login, Domain,..).
J'ai fait un script qui fonctionne sans thread, je l'ai transformé et la ca marche plus
$domains=@(Dom1, dom2)
$threads=@()
foreach($domain in $domains){
$runspace = [runspacefactory]::CreateRunspace()
$runspace.apartmentstate ="STA"
$runspace.Threadoptions ="ReuseThread"
$runspace.open()
$Pipeline = [powershell]::Create().addScript({{(param $domain)Get-ADUser -filter {surname -like "Nom"} -server $domain}).addArgument($domain)
$Pipeline.runspace = $runspace
$threads+= New-Object psobject -Property @{
pipeline = $Pipeline
Runspace =$runspace
Result = $null
}
}
write-host "sortie des domaine"
foreach($thread in $threads){
$thread.pipeline.BeginInvoke()
}
$Cpt=0
while ($threads.result -contains $null){
start-sleep -Seconds 1
$Cpt++
}
$users=@()
foreach($thread in $threads){
$users+=$thread.Result
}
$users
Avez-vous une idée? Merci d'avance
Je suis en powershell 5.1
Voici mon besoin: J'aimerai récupéré dans tous mes domaines, tous les users qui ont le nom "<Nom>" et j'aimerai récuéprer les informations suivantes (Nom, Prenom, Login, Domain,..).
J'ai fait un script qui fonctionne sans thread, je l'ai transformé et la ca marche plus
$domains=@(Dom1, dom2)
$threads=@()
foreach($domain in $domains){
$runspace = [runspacefactory]::CreateRunspace()
$runspace.apartmentstate ="STA"
$runspace.Threadoptions ="ReuseThread"
$runspace.open()
$Pipeline = [powershell]::Create().addScript({{(param $domain)Get-ADUser -filter {surname -like "Nom"} -server $domain}).addArgument($domain)
$Pipeline.runspace = $runspace
$threads+= New-Object psobject -Property @{
pipeline = $Pipeline
Runspace =$runspace
Result = $null
}
}
write-host "sortie des domaine"
foreach($thread in $threads){
$thread.pipeline.BeginInvoke()
}
$Cpt=0
while ($threads.result -contains $null){
start-sleep -Seconds 1
$Cpt++
}
$users=@()
foreach($thread in $threads){
$users+=$thread.Result
}
$users
Avez-vous une idée? Merci d'avance
Connexion ou Créer un compte pour participer à la conversation.
- MARTINEZ
- Auteur du sujet
- Visiteur
il y a 1 an 7 mois #33151
par MARTINEZ
Réponse de MARTINEZ sur le sujet Problème pour faire du Threads
J'ai trouvé une réponse sur ce site . Merci quand même
gist.github.com/proxb/803fee30f0df244fd850
gist.github.com/proxb/803fee30f0df244fd850
Connexion ou Créer un compte pour participer à la conversation.
Temps de génération de la page : 0.097 secondes
- Vous êtes ici :
- Accueil
- forum
- PowerShell
- Entraide pour les initiés
- Problème pour faire du Threads