这是针对Exchange / Office 365 powershell,但也可以应用于其他类型。
如果我有一个用户列表,我使用UserPrincipalName
作为他们的身份 - 现在在我的所有脚本中,我可以使用UserPrincipalName
为身份提取数据,但在大多数{{1实际上不是可导出的值。因此,如果您使用下面的两个示例,我可以使用UserPrincipalName
作为标识来提取数据,但在第二个示例中,输出将为空白。
如何将标识值UserPrincipalName
插入到第二个中。这将适用于下面提到的两个以上的脚本。
UserPrincipalName
示例输出:
$CSV | foreach { Get-Mailbox -resultsize unlimited -Identity $_.UserPrincipalName } | select userprincipalname, server |out-gridview
UPN@something.com, server101
示例输出:
$csv | ForEach { Get-ActiveSyncDeviceStatistics -Identity:$_.UserPrincipalName } | select DeviceFriendlyName,UserPrincipalName |out-gridview
答案 0 :(得分:0)
我手边没有Exchange,但很可能Get-Mailbox
返回的对象确实有UserPrincipalName
属性,而Get-ActiveSyncDeviceStatistics
返回的对象则没有。要在第二个脚本的输出中保留UPN,您可以执行以下操作:
$csv | ForEach {
$upn = $_.UserPrincipalName
Get-ActiveSyncDeviceStatistics -Identity:$upn
} | select DeviceFriendlyName,@{n='UserPrincipalName';e={$upn}} |out-gridview