0

需要一次删除多个已终止用户的所有会议室中已终止用户的会议请求。

下面是我为从所有会议室中删除两个已终止用户的会议请求而构建的脚本。OR如果我想删除两个终止用户的会议(种类:日历来自:sasi OR Kalai),我使用操作员。如何一次添加两个以上的已终止用户?我有 500 多名已终止的用户从所有会议室中删除他们的会议请求。

Write-Progress -Activity "Preparing" -Status "Retrieving mailbox list" -PercentComplete 0
$rooms=get-mailbox -recipienttypedetails roommailbox -resultsize unlimited -warningaction:silentlycontinue| where {$_.name -notlike "*test*"}

$count=$rooms.count

foreach($room in $rooms)

{


    $i=$i+1
    $percentage=$i/$count*100


    Write-Progress -Activity "Collecting mailbox details" -Status "Processing mailbox $i of $Count - $room" -PercentComplete $percentage

$room | search-mailbox -searchquery "kind:calendar from:sasi OR Kalai" -targetmailbox sankar_munirathinam@domain.com -targetfolder "Deleting Meeting" -deletecontent -force

}
4

2 回答 2

2

因此,如果我正确理解上述内容,您会执行以下操作吗?如果这只是调查,你可以采取“删除内容 -force”吗?

Write-Progress -Activity "Preparing" -Status "Retrieving mailbox list" -PercentComplete 0
$rooms=get-mailbox -recipienttypedetails roommailbox -resultsize unlimited -    
warningaction:silentlycontinue| where {$_.name -notlike "*test*"}

$count=$rooms.count
$TerminatedUsers = Get-Content .\TerminatedUsersList.txt
foreach ($User in $TerminatedUsers) {
foreach($room in $rooms)

{


$i=$i+1
$percentage=$i/$count*100


Write-Progress -Activity "Collecting mailbox details" -Status "Processing mailbox $i of $Count -
$room" -PercentComplete $percentage

$room | search-mailbox -searchquery "kind:calendar from:$($user)" -targetmailbox    
administrator@domain.com -targetfolder "Deleting Meeting" -deletecontent -force

}
}
于 2014-12-09T21:04:21.083 回答
0

我想我真的可以为你回答这个问题!我在堆栈上的第一个答案(我记得):)

您应该将终止用户的用户名(或其他标识符)放在一个文本文件中,然后在您的行下方插入一个新行

$count=$rooms.count

那是

$TerminatedUsers = Get-Content .\TerminatedUsersList.txt.

然后添加另一行

foreach ($User in $TerminatedUsers) {

}然后在脚本的最后添加一个结束大括号。

最后,将您的更改from:sasi OR Kalaifrom:$($User)

这将遍历每个终止的用户,并且对于每个人,它将搜索所有房间邮箱以查找他们的会议。

我希望这对你有意义。

于 2014-02-25T19:28:47.123 回答