我正在运行一个脚本,以便在Exchange中找到其收件箱中的文件夹中的任何用户。其中一个用户的回报是这样的:
$mailbox = @{Name=Test; FolderPath=/Inbox/Test; FolderSize=118.6 KB (121,475 bytes); FolderAndSubfolderSize=118.6 KB (121,475 bytes)} @{Name=Test Folder 2; FolderPath=/Inbox/Test Folder 2; FolderSize=0 B (0 bytes); FolderAndSubfolderSize=0 B (0 bytes)}
我想获取该数据并向他们发送一封列出文件夹的电子邮件。我正在使用此代码作为电子邮件的正文:“以下文件夹位于您的收件箱中:$ mailbox.FolderPath”
我希望它看起来像这样(换行符):
The following folders are in your Inbox:
/Inbox/Test
/Inbox/Test Folder 2
目前它在一行中返回所有内容:
The following are in your Inbox:
/Inbox/Test /Inbox/Test Folder 2
如何分隔不同行的条目?谢谢。
答案 0 :(得分:0)
您可以尝试这样的事情:
$array = @("The following folders are in your Inbox: ")
Foreach ($folder in $mailbox.FolderPath)
{
$array += ($folder + "`n")
}
$ array将是您放入电子邮件正文的内容。
答案 1 :(得分:0)
这就是PowerShell在作为输出字符串进行转换时显示通用数组的方式。一个简单的-join
就足够了
"1","2" -join "`r`n"
这将在元素之间添加换行符。
在你的情况下,你可以做这样的事情。注意:变量$mailbox
有点格格不入,所以我不得不放在一些引号中以使其工作。
$mailbox.FolderPath -join "`r`n"
或者像你在评论中说的那样。
$mailbox.FolderPath -join "<br>"