Получить список группы по маске:
Import-Module ActiveDirectory Get-ADGroup -Filter {name -like "*Workstation Admins"} | select name
Получить список членов AD группы, которые удовлетворяют критерию (содержат в своем названии search_matching_rule):
Import-Module ActiveDirectory $oulist = Get-ADGroup "AD_Group_name" -Properties * | select -expandproperty memberof | where {$_ -match 'search_matching_rule'} $oulist | % { $_ -split ',',2 | select -first 1 } $oulist
Получение имени менеджера сотрудника и его телефонного номера:
Import-Module ActiveDirectory $user = Read-Host -Prompt "Enter username" -ErrorAction Stop $managerdn = (Get-ADUser $user -Properties *).manager $man = $managerdn -split ',',3 | select -first 2 $manfullname = $man[0].trim("CN=\")+ "," + $man[1] $user+"'s manager is " + $manfullname $mgrusrname = Get-ADUser -Filter {name -like $manfullname} | select -ExpandProperty samaccountname $mgrddi = Get-ADUser $mgrusrname -Properties telephoneNumber| select -ExpandProperty telephoneNumber $manfullname+"'s DDI number is "+$mgrddi $mgrddi.substring(10)
Выгрузка email для списка аккаунтов:
Import-Module ActiveDirectory $users = get-content -Path (Read-Host -Prompt "Path to TXT file with users" -ErrorAction Stop) foreach($user in $users) { Get-ADUser $user -Properties mail | select -ExpandProperty mail | Out-File D:\AD\user_list.txt -append }
Включить аккаунты пользователей из списка:
Import-Module ActiveDirectory $users = get-content -Path (Read-Host -Prompt "Path to TXT file with users" -ErrorAction Stop) foreach($uname in $users) { Get-ADUser -Identity $uname -Properties enabled | select samaccountname >> c:\Temp\list.txt }