简体   繁体   中英

Powershell loop deal with multiple AD users in output

I have constructed below to show an certain active directory users details and all their groups.

This works ok if only one user is returned howver if multiple users are returned I get an error with this section: "Get-ADPrincipalGroupMembership $user.samaccountname | select name"

I've looked in the direction of for loops but haven't yet found a solution

I need each user found displayed with their groups. I plan to use this script to quickly gather info to troubleshoot user issues.

Thanks for reading

add-pssnapin quest.activeroles.admanagement

import-module activedirectory

clear-host

$name = read-host 'Whats the name ?'

$user = Get-qAduser $name -properties *

$user | select name,SamAccountName,AccountIsLockedOut,PasswordStatus,PasswordLastSet,PasswordExpires,email,ParentContainerDN,CreationDate | format-list

Get-ADPrincipalGroupMembership $user.samaccountname | select name

cmd /c pause | Out-Null

Just assume you're getting a list back and then use a foreach to iterate over the list:

add-pssnapin quest.activeroles.admanagement    
import-module activedirectory

clear-host

$name = read-host 'Whats the name ?'    
$users = Get-qAduser $name -properties *

foreach ($user in $users) {
    $user | select name,SamAccountName,AccountIsLockedOut,PasswordStatus,PasswordLastSet,PasswordExpires,email,ParentContainerDN,CreationDate | format-list

    Get-ADPrincipalGroupMembership $user.samaccountname | select name
}

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM