Exchange PowerShell:查找活动目录办公室属性

powershell active-directory exchange-server-2007

3474 观看

2回复

5542 作者的声誉

我编写了这个小脚本,通过管道交换邮箱对象从get-user提取office属性。

$server = "tms08"
$arrUser = get-mailbox -Server $server |Get-MailboxStatistics |select identity
foreach ( $id in $arrUuser)
{
    $office = get-user -Identity $id.Identity |select office
    $out += $id.Identity 
}
$out 

我没有任何输出或红色错误。只是警告:

警告:因为指定的邮箱“ Globe / MobileElect用户模板”没有登录,所以没有要返回的数据。警告:默认情况下,仅返回前1000个项目。要更改返回的项目数,请指定参数“ -ResultSize”。要返回所有项目,请指定“ -ResultSize Unilimited”(注意:根据项目的实际数量,返回所有项目可能会花费很长时间,并且会占用大量内存)。不建议将结果存储在变量中。而是将结果通过管道传递到另一个任务或脚本以执行批量更改。

关于什么可能导致此的任何想法?

我的目标是开发一个脚本,该脚本每天通过计划任务执行一次,该任务可以编译所有邮箱名称,邮箱大小,总数,总数删除的项目以及它们的办公室和描述字段(来自活动目录)。

我猜想get-qaduser是powershell附加任务的一部分。我将其本地安装并尝试一下。

identiy属性似乎给出了与guid类似的数字,看起来像1234as01-4f54-1234-b1df-f1df1df12d2d

我尝试跑步

get-user -identity 1234as01-4f54-1234-b1df-f1df1df12d2d  

它找到了一个名字(joey blasio)和收件人类型(usermailbox)

然后我跑了

get-user -Identity 1234as01-4f54-1234-b1df-f1df1df12d2d | select displayname, distinguistedname  

显示名称(Joey Blasio)和专有名称(CN = Joey Blasio,OU = EWE,DC = BLA-1,DC = net)

作者: phill 的来源 发布者: 2008 年 12 月 2 日

回应 (2)


0

7321 作者的声誉

我认为问题在于您正在访问的邮箱从未被正常访问过。您可以使用知道所有者已打开并使用过的邮箱的方式尝试此操作吗?还是这样?

另外,由于我目前无法访问我的Exchange计算机,因此您可以让我大致了解一下Identity属性包含的内容吗?我绝对可以肯定,在Exchange中使用Get-QADUservs. 这样的cmdlet Get-User最终会带给您更多的满意度。我们只需要将正确的属性划分Get-MailboxStatisticsGet-QADUser可以消耗的东西,以便它可以为您找到合适的用户。

了解您的最终目标可能也会有所帮助-可能有一种完全不同的方法可以使您到达想要的位置。

作者: Don Jones 发布者: 02.12.2008 10:28

0

5542 作者的声誉

它是由 DisplayName

$exchangeservers = Get-MailboxServer
$AllUsers = @()
$AllUsersEmail = @()

foreach ($server in $exchangeservers)
{
    $AllUsers += Get-Mailbox -Server $server |Get-MailboxStatistics |select servername,displayname,itemcount,totalitemsize
}

foreach ($user in $AllUsers)
{
    $obj = new-object psObject
    $mailinfo = get-mailbox -identity $user.displayname |select PrimarySMTPAddress,Office, DistinguishedName
    $tmp = [adsi]("LDAP://" +  $mailinfo.DistinguishedName)


    $obj |Add-Member -MemberType noteproperty -Name "Server Name" -Value $user.ServerName
    $obj |Add-Member -MemberType noteproperty -Name "Display Name" -Value $user.DisplayName
    $obj |Add-Member -MemberType noteproperty -Name "Item Count" -Value $user.ItemCount
    $obj |Add-Member -MemberType noteproperty -Name "Total Item Size" -Value $user.TotalItemSize
    $obj |Add-Member -MemberType noteproperty -Name "Email Address" -Value $mailinfo.PrimarySMTPAddress
    $obj |Add-Member -MemberType noteproperty -Name "Office" -Value $mailinfo.Office
    $obj |Add-Member -MemberType noteproperty -Name "Description" -Value $tmp.description

    $AllUsersEmail += $obj
}

$AllUsersEmail |Export-Csv c:\test.csv -NoTypeInformation 
作者: phill 发布者: 03.12.2008 12:25
32x32