powershell - 导入 .csv AzureADUser 脚本仅返回 100 个条目
问题描述
我从 O365 导出了一个包含 270 个用户帐户的列表,我所有的共享邮箱,我想要做的是提取每个帐户的部门字段。但是我用来获取 sharedlist.csv 的 cmdlet Get-Mailbox 的输出不包括部门信息。
我知道 AzureADUser 会这样做,因此,我正在尝试遍历 sharedlist.csv 并为 sharedlist.csv 中列出的每个地址提取显示名称、UPN 和部门
我想弄清楚的是如何让 Get-AzureADUser 仅提取我在 CSV 文件中列出的用户的信息。这是我到目前为止的命令:
Import-Csv 'C:\PowerShell Scripts\sharedlist.csv' | ForEach {Get-AzureADUser -All $True | Select-Object DisplayName,UserPrincipalName,Department}
这显然不适用于我正在尝试做的事情。它以我想要的格式输出并显示数据,但它会拉动每个 Azure 广告用户,然后一遍又一遍地循环。如果有人能指出完成这项工作所需的正确语法,我将不胜感激。
TIA
解决方案
正如 Lee_Daily 在他的评论中已经解释的那样,您使用的是Get-AzureADUser
不带任何参数的 cmdlet,因此它会返回有关任何用户的信息,而不仅仅是您在 CSV 文件中定义的用户信息。
如果您的文件(我查看了原始问题)如下所示:
"UserPrincipalName"
"user1@domain.com"
"user2@domain.com"
"user270@domain.com"
那么这应该适合你:
$data = Import-Csv 'C:\PowerShell Scripts\sharedlist.csv'
$data | ForEach-Object {
Get-AzureADUser -ObjectId $_.UserPrincipalName | Select-Object DisplayName,UserPrincipalName,Department
}
推荐阅读
- kubernetes - 在 kubectl 配置中设置用户凭据时出错
- c++ - 如何访问一组地图的元素?C++
- export - 使用 Clang/LLC/WASM-LD 将 C 编译为 WASM 时,如何直接导出整数常量?
- android - TextInputLayout - boxBackgroundColor 样式属性在 Android 中不起作用
- php - Laravel Eloquent select in with empty
- arrays - 用 F:F 使用范围结束的空单元格替换 0 的公式
- node.js - 尝试在 docker 中运行全局安装的 npm 模块时出现未找到错误
- security - API 网关微服务模式中用户密码的散列位置
- minecraft-forge - 即使我指定它应该在武器上,为什么附魔也适用于盔甲?
- python - 如何检查列表中元组中的第一个数字?