使用PowerShell导出指定Azure AD用户列表的CreatedDateTime
问题分析与解决方案
失败原因
你的脚本当前只输出纯日期字符串,而Export-CSV需要处理的是带有明确属性的对象。直接输出字符串时,PowerShell会默认将其识别为仅包含Length属性的对象,最终导出的CSV内容会完全不符合预期。
解决方案
在ForEach-Object循环中创建包含用户UPN和创建日期的自定义对象,让Export-CSV能正确识别并导出对应的列。
修改后的完整脚本:
Connect-AzureAD Import-Csv -Path C:\Temp\Morsecode\F1license.csv | ForEach-Object { $upn = $_.Name $creationDate = (Get-AzureADUserExtension -ObjectId $upn).Get_Item("createdDateTime") # 生成带属性的自定义对象 [PSCustomObject]@{ UPN = $upn CreatedDateTime = $creationDate } } | Export-Csv -Path C:\Temp\Morsecode\F1license_creationDate.csv -NoTypeInformation
补充说明
- 导出的CSV会包含
UPN和CreatedDateTime两列,清晰对应每个用户的信息。 - 如果你的源CSV中存储UPN的列名不是
Name,请将$_.Name替换为实际列名(比如$_.UserPrincipalName)。
内容的提问来源于stack exchange,提问作者Borski
相关产品推荐
相关产品推荐

