Вывод списка атрибутов AD с помощью PowerShell с использованием DirectoryServices на Windows Server 2008

Вывод списка атрибутов AD с помощью PowerShell с использованием DirectoryServices на Windows Server 2008

Я пытаюсь получить список имен пользователей и их атрибут pwdlastset на контроллере домена Windows Server 2008. Я использую directoryservices, поскольку не установлены adutils. Скрипт работает, но у меня нет опыта работы с powershell, и я хотел бы узнать, как улучшить форматирование вывода. В настоящее время имена пользователей и даты печатаются каждое в новой строке. Я получаю что-то вроде этого:

пользователь1

pwdlastsetdate

пользователь2

pwdlastsetdate

Как я могу получить что-то вроде

пользователь1;парольпоследняя_установка_дата

пользователь2;парольпоследнейдаты

Спасибо!

Вот скрипт, который я использую:

$SR=New-Object DirectoryServices.DirectoryEntry("GC://OU=OrganisationName,OU=Users,DC=site,DC=orgname,DC=de")
$searcher=New-Object DirectoryServices.DirectorySearcher($SR)
$searcher.Filter="(&(objectCategory=User))"
$results=$searcher.findall()
foreach ($usr in $results)
{
    $usrdata = $usr.Properties
    $usrdata.name
    [DateTime]::FromFileTime($usrdata.pwdlastset[0]).ToString("d")
}

решение1

Вы можете создать собственный массив, выполнив следующие действия:

$SR=New-Object DirectoryServices.DirectoryEntry("GC://OU=OrganisationName,OU=Users,DC=site,DC=orgname,DC=de")
$searcher=New-Object DirectoryServices.DirectorySearcher($SR)
$searcher.Filter="(&(objectCategory=User))"
$results=$searcher.findall()

$allinfo = @()

foreach ($usr in $results)
{
    $info = "" | Select Name,Date
    $usrdata = $usr.Properties

    #Without [0] you get curly brackets in username output

    $info.Name = $usrdata.name[0]
    $info.Date = [DateTime]::FromFileTime($usrdata.pwdlastset[0]).ToString("d")
    $allinfo += $info
}

Теперь у вас есть массив с информацией, которую вы можете просто распечатать или отформатировать с помощью format-table

$allinfo

$allinfo | format-table

$allinfo | export-csv -NoTypeInformation c:\allinfo.csv

Связанный контент