Все, благодаря решению в quesiton Отредактируйте найденный мной сценарий, чтобы импортировать список адусеров, получить их информацию и экспортировать обратно в другой CSV, который мне удалось придумать следующий сценарий. Скрипт извлекает имя пользователя из CSV-файла, подключается к объявлению и экспортирует группы пользователей в другой CSV-файл. Эта часть работает отлично. Вот где я сталкиваюсь с проблемами. Каждое имя пользователя / группа помещается в новую строку. Что идеально, за исключением пользователей в нескольких группах. Так пример
ColA ColB
User Group
bob admin
jeff domain admin
jeff test admin
jeff power user
Я бы хотел придумать способ экспорта в следующем формате
ColA ColB ColC ColD
User Group Group Group
bob admin
jeff domian admin test admin power user
Вот мой сценарий
Begin {
Try { Import-Module ActiveDirectory -ErrorAction Stop }
Catch { Write-Host "Unable to load Active Directory module, is RSAT installed?"; Break }
}
Process {
$UserList=Get-Content C:\Userlist.csv
$users = ForEach ($U in $UserList)
{ $UN = Get-ADUser $U -Properties MemberOf
$Groups = ForEach ($Group in ($UN.MemberOf))
{ (Get-ADGroup $Group).Name
}
$Groups = $Groups | Sort
ForEach ($Group in $Groups)
{ New-Object PSObject -Property @{
Name = $UN.Name
Group = $Group
}
}
}
$users | export-csv "c:\grouptest.csv" -append
}
Можно ли это сделать?