你好,Stackoverflow社区,这是我第一次发布问题。
我也是powershell的新手,但我能够根据我找到的其他脚本编写一个小脚本,并且它可以工作。我的目标是查询所有邮箱,并输出一个包含用户的列和一个包含其trustedsender和domains的条目的列。我想它重复的用户时,用户有多个条目,并显示没有的情况下,他们没有任何。它看起来像这样:
csv
这就是我的。(为了测试的目的,我设置3个实际用户,但评论部分工作)
$Users = ("user1", "user2", "user3")
#$Users = Get-Mailbox | select -ExpandProperty Alias
$objfull = @()
Foreach ($User in $Users)
{
$Junk = Get-MailboxJunkEmailConfiguration $User
$Emails = Get-MailboxJunkEmailConfiguration $User | select -ExpandProperty TrustedSendersAndDomains
$obj = New-Object System.Object
Foreach ($Email in $Emails)
{
$obj | Add-Member NoteProperty User $User
$obj | Add-Member NoteProperty Trusted_Senders $Junk.TrustedSendersAndDomains
$objfull += $obj
}
}
$objfull | Export-Csv C:\Users\Leo\export.csv -NoTypeInformation
虽然它会为没有条目的用户抛出错误,但这适用于重复用户,但可信发送者输出的是整个数组,并且是空格分隔的,而不是逗号。
我正在测试的另一个将以我希望的csv方式写入终端。
$Users = ("user1", "user2", "user3")
#$Users = Get-Mailbox | select -ExpandProperty Alias
$objfull = @()
Foreach ($User in $Users)
{
$Junk = Get-MailboxJunkEmailConfiguration $User
$Emails = Get-MailboxJunkEmailConfiguration $User | select -ExpandProperty TrustedSendersAndDomains
$obj = New-Object System.Object
Foreach ($Email in $Emails)
{
Write-Host $Email, $User
}
}
#$objfull | Export-Csv C:\Users\Leo\export.csv -NoTypeInformation
感谢您的帮助提前!
1条答案
按热度按时间lh80um4z1#