Powershell 查找用户的主SMTP地址
更新时间:2015年10月10日 16:53:15 投稿:mdxy-dxy
这篇文章主要介绍了Powershell 查找用户的主SMTP地址,需要的朋友可以参考下
今天同事让我生成一个报表,列出用户的主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中运行CMD命令的技巧总结(解决名称冲突和特殊字符等问题)
这篇文章主要介绍了PowerShell中运行CMD命令的技巧总结(解决名称冲突和特殊字符等问题),需要的朋友可以参考下2014-05-05PowerShell中使用.NET将程序集加入全局程序集缓存
这篇文章主要介绍了PowerShell中使用.NET将程序集加入全局程序集缓存,本文介绍了两种方法实现把程序集加入全局程序集缓存,着重讲解了使用.Net的类库解决这个需求,需要的朋友可以参考下2015-06-06PowerShell Out-File向只读文件写入内容的方法
这篇文章主要介绍了PowerShell Out-File向只读文件写入内容的方法,只需要加一个-Force参数即可,需要的朋友可以参考下2014-08-08Powershell使用嵌套哈希表实例 嵌套哈希表的2种写法例子
这篇文章主要介绍了Powershell使用嵌套哈希表实例,嵌套哈希表的2种写法例子,需要的朋友可以参考下2014-07-07
最新评论