我正在尝试导出所有 DL 的列表,并且我需要能够有一个包含 ManagedBy 值的 samaccountname 的列(如果有多个,则为第一个条目)。
Get-DistributionGroup | Select-Object Name, ManagedBy | Export-Csv C:\out.txt
毫不奇怪,这给了我类似这样的结果:
"Name","ManagedBy"
"DL-SOMETHING-SOMETHING","Microsoft.Exchange.Data.Directory.ADMultiValuedProperty`1[Microsoft.Exchange.Data.Directory.ADObjectId]"
如果这不是一行代码,我可以循环遍历 ManagedBy 值,使用 GET-AdUser 并提取我需要的内容。
但是,如果我只关心第一个 ManagedBy,我能用一行代码完成这个吗?
就像是...
Get-DistributionGroup | Select-Object Name, ManagedBy[0].Samaccountname | Export-Csv C:\out.txt
如果我能得到与在控制台中运行此命令时相同的字符串,我就可以使用它:
Get-DistributionGroup | Select-Object Name, ManagedBy
输出
DL-SOMETHING-SOMETHING, {somedomain.com/Accounts/SomeAccount}