我正在使用var dirName = DriveApp.getFileById(SpreadsheetApp.getActiveSpreadsheet().getId()).getParents().next().getId();
DriveApp.getFileById(SpreadsheetApp.getActiveSpreadsheet().getId()).getParents().next().createFile(fileName, txtFile);
来获取用户/邮箱名称,然后进行Get-Mailbox
搜索。
Get-MailboxPermission
每个起始字母(Get-Mailbox -ResultSize unlimited -Filter {name -like "a*"} | Get-MailboxPermission | where { ($_.AccessRights -eq “FullAccess, ChangePermission”) | blah blah
,a*
,b*
等)都有不同的行。这项工作正常,但似乎可以通过使用数组引用(c*
的某种循环(foreach
或foreach-object
)来完成,或者可能需要使用{{1} }),但我可能稍后可以解决通配符部分。
由于没有太多的邮箱并且内存使用非常密集,使用逐个字母的引用,每个字母的内存似乎都下降了(并且在每个字母之间运行垃圾回收似乎使help-每个字母的输出都写入.csv)。
任何人都想-我觉得我缺少一些简单的东西,因为到目前为止,尝试数组无法正常工作。结果,它通常会吐出所有邮箱,而不是精选的字母(a,b,c)。
答案 0 :(得分:0)
您可以遍历数组以避免多行。
$alphabet = [char[]]([int][char]'a'..[int][char]'z')
foreach ($letter in $alphabet) {
Get-Mailbox -ResultSize unlimited -Filter "name -like '$letter*'" | Get-MailboxPermission | where { ($_.AccessRights -eq “FullAccess, ChangePermission”) | blah blah
} # end foreach
This topic讨论了优美的字母数组。