PowerShell 使用 DisplayNames 查找 UserPrincipalName
PowerShell Look Up UserPrincipalName using DisplayNames
我正在尝试编写一个脚本来导入 CSV 文件,return 来自 AzureAD 的 UserPrincipalName。
出于某种原因,它只是没有读取文件中的名称,return是一个空列表。
但是,如果我手动输入名称,它就可以工作。
CSV文件只有一列,格式为:
User
FirstName1 LastName1
FirstName2 LastName2
FirstName3 LastName3
脚本:
$UserCSV = Import-Csv -Path "C:Path\to\file.csv"
foreach($user in $UserCSV)
{
Get-AzureADUser -SearchString $user | Select DisplayName, UserPrincipalName, Email
}
问题是,如果我写 $UserCSV = "FirstName1 LastName1", "FirstName2 LastName2" 它可以正常工作。
任何指导将不胜感激。
您可以在 for each 循环中将 $user 更改为 $user.User
同时将 Email 更改为 Mail
最终脚本将是:
$UserCSV = Import-Csv -Path "C:Path\to\file.csv"
foreach($user in $UserCSV)
{
Get-AzureADUser -SearchString $user.User | Select DisplayName, UserPrincipalName, Mail
}
我正在尝试编写一个脚本来导入 CSV 文件,return 来自 AzureAD 的 UserPrincipalName。
出于某种原因,它只是没有读取文件中的名称,return是一个空列表。 但是,如果我手动输入名称,它就可以工作。 CSV文件只有一列,格式为:
User
FirstName1 LastName1
FirstName2 LastName2
FirstName3 LastName3
脚本:
$UserCSV = Import-Csv -Path "C:Path\to\file.csv"
foreach($user in $UserCSV)
{
Get-AzureADUser -SearchString $user | Select DisplayName, UserPrincipalName, Email
}
问题是,如果我写 $UserCSV = "FirstName1 LastName1", "FirstName2 LastName2" 它可以正常工作。
任何指导将不胜感激。
您可以在 for each 循环中将 $user 更改为 $user.User
同时将 Email 更改为 Mail
最终脚本将是:
$UserCSV = Import-Csv -Path "C:Path\to\file.csv"
foreach($user in $UserCSV)
{
Get-AzureADUser -SearchString $user.User | Select DisplayName, UserPrincipalName, Mail
}