首页 > Web开发 > 详细

Powershell 查找用户的主SMTP地址

时间:2015-12-12 09:29:46      阅读:132      评论:0      收藏:0      [点我收藏+]

今天同事让我生成一个报表,列出用户的主SMTP地址后缀是@aus.ddb.com的用户。
Get-ADUser可以直接获取相关信息,不过主SMTP是隐藏在ProxyAddress这个属性里面的,如果1个用户有多个邮件地址,大写的SMTP的那个就是主地址。


脚本如下,获取所有用户的信息,然后创建一个空对象,对每一个对象的属性进行处理,把对应的值放入对象, 最后过滤结果输出。

$users = Get-ADUser -Filter {proxyAddresses -like ‘*‘} -SearchBase "ou=sydney,dc=omnicom,dc=com,dc=au" -Properties proxyAddresses 
$pp=$null
$pp=@{‘name‘=$null;‘primarysmtp‘=$null} 
$obj=New-Object -TypeName psobject -Property $pp
  
$result=@() 
foreach($user in $users){ 
$primarySMTPAddress = "" 
foreach ($address in $user.proxyAddresses) 
{ 
  if (($address.Length -gt 5) -and ($address.SubString(0,5) -ceq ‘SMTP:‘) ) 
  { 
    $primarySMTPAddress = $address.SubString(5) 
    break 
  } 
} 
$objtemp=$obj | select * 
$objtemp.name=$user.Name 
$objtemp.primarysmtp=$primarySMTPAddress 
$result+=$objtemp 
} 
$result | Where-Object{$_.primarysmtp -like "*aus.ddb.com*"} | sort Name

技术分享

本文出自 “麻婆豆腐” 博客

Powershell 查找用户的主SMTP地址

原文:http://www.jb51.net/article/73202.htm

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!