Как найти / экспортировать только одно значение (основной SMTP) из многозначных прокси-адресов
У меня есть скрипт, который ищет значения в атрибуте Company и Proxy Addresses.
Get-ADUser -Filter * -SearchBase 'OU=Stu,OU=LOWA,OU=IDLOWA,DC=ad,DC=ju,DC=com' -Properties company,proxyaddresses | select company, @{L='ProxyAddress'; E={$_.proxyaddresses -join"; "}}
У компании есть два символа, но адрес прокси-сервера многозначен, например:
smtp:adam@ff.ju.com,SMTP:adam@zf.ju.com,smtp:adam@ju.com
или же
smtp:adam@ff.ju.com,SMTP:adam@ef.ju.com
или же
SMTP:adam@ff.ju.com
Мне нужно экспортировать / сохранить в переменную или CSV-файл только основной SMTP-адрес, что означает SMTP:xxx@xxx
Спасибо
1 ответ
Этот код получит вам все первичные SMTP-адреса для заданного параметра searchbase, направит вывод в файл TXT. Может быть, нужно немного подправить для получения дополнительной информации, но я думаю, что это поможет вам:
$users = Get-ADUser -Filter * -SearchBase 'OU=Stu,OU=LOWA,OU=IDLOWA,DC=ad,DC=ju,DC=com' -Properties proxyaddresses
$primarySMTPAddress = @()
foreach ($address in $users.proxyAddresses)
{
if (($address.Length -gt 5) -and ($address.SubString(0,5) -ceq 'SMTP:'))
{
$primarySMTPAddress += $address.SubString(5)
}
}
$primarySMTPAddress | out-file -Pathg C:\tmp\PrimarySMTPAdresses.txt
Измените путь к файлу на допустимое местоположение.