无法导出所有用户,当将 CSV 文件导入然后 Get-ADUser,只会显示一个用户



我才刚刚开始学习PowerShell,但我用这个撞墙了。当我导入 CSV 用户列表以在 Get-Aduser 上获取带有标题 SamAccountName 的用户主体名称时,我能够在控制台上看到所有电子邮件:

ForEach ($user in $allUsers)
{ 
Get-ADUser $user.samaccountname -Properties userprincipalname | select -Property userprincipalname
}

但是,当我尝试将它们导出到 csv 文件时,只有 1 个用户出来。为此使用 foreach 循环时,我总是遇到问题......

ForEach ($user in $allUsers)
{ 
Get-ADUser $user.samaccountname -Properties userprincipalname | select -Property userprincipalname | export-csv $path -NoTypeInformation
}

在制作 foreach 循环时,我总是遇到这个问题。我只得到或更改 1 个变量。这是为什么呢?x_X 请帮忙!

我的CSV文件有一个SamAccountName和samaccount名称的标题。如果不导出,我从控制台上的这段代码中获得了良好的数据:

user@test.comuser2@test.com等。。。

您在循环的每次迭代中导出,这将覆盖文件。 我还没有尝试过,但下面的更改应该可以工作。

$allUsers  | Foreach-Object { 
    $user = $_ 
    Get-ADUser $user.samaccountname -Properties userprincipalname | select -Property userprincipalname 
} | export-csv $path -NoTypeInformation
如果要

将结果直接管道传输到export-csv,则必须使用此语法与foreach(x in y)

最新更新