Я пытаюсь сделать для каждой группы пользователей. а затем получить более подробную информацию о пользователях.PowerShell Получение всех пользователей из нескольких групп
Может кто-нибудь понять, почему нижеследующее не работает?
do
{
[email protected]('"Group1"'
'"Group2"',
'"Group3"',
'"Group4"',
'"Group5"')
try{
$Group | ForEach{
ForEach ($member in (Get-ADGroupMember $_))
{
$user = Get-ADUser $member -Properties *
$useracc = $user.samaccountname
$userid = $user.EmployeeID
$userout = $useracc + " - " + $userid
write-output $userout | out-file -filepath c:\temp\New.txt -Append -NoClobber
}
}
}
Catch
{
write-output $userout | out-file -filepath c:\temp\error.txt }
}
until ($memeber -eq $Null)
По крайней мере, вам не хватает 3 закрывающих скобок, и от всех я могу сказать вам, не выводят ничего, только один раз присваивая каждому пользователю один пользователь, а не выводит его вообще. – TheMadTechnician
thats только snipit, все закрыто правильно, и есть больше, чтобы следовать за witch catch. –
По крайней мере, измените цикл 'ForEach' так, чтобы вы не повторно использовали' $ user', поэтому 'ForEach ($ user in (get-adgroupmember $ _))' становится 'ForEach ($ member in (get-adgroupmember $ _)) ', а затем измените' $ user = Get-ADUser $ user -prop * ', чтобы указать свойство различаемого имени, например' $ ADUser = Get-ADUser $ member.distinguishedname -prop * '... посмотреть, помогает ли это. – TheMadTechnician