gpt4 book ai didi

powershell - CSV空,以从广告用户导出自定义属性

转载 作者:行者123 更新时间:2023-12-03 00:09:45 26 4
gpt4 key购买 nike

从csv文件,在powershell控制台中查看属性值没有问题,但是当我要在csv文件中导出时,文件为空,也许有人可以帮帮我吗?

$adusers = Import-Csv "c:\temp\adusers.csv" -Delimiter ";"

foreach ($item in $adusers) {
# Map variables from CSV
$adusers = $item.'ADUsers'
$Servers = $item.'Domain'


Get-ADUser -identity $adusers -Properties flags -Server $Servers | Select-
Object -Property samaccountname, userprincipalname, flags | export-csv
c:\temp\fdfdrff.csv -Encoding Unicode

}

文件adusers.csv:
ADUsers;Domain
account1;Domain1
account2;Domain2
account3;Domain3
account4;Domain4
account5;Domain5
account6;Domain6
account7;Domain7
account8;Domain8
account9;Domain9

输出文件:
"#TYPE Selected.Microsoft.ActiveDirectory.Management.ADUser"
"samaccountname","userprincipalname","flags"
"account9","account9@Domain9.local",

最佳答案

如果在Export-CSV循环内使用foreach,则必须记住-Append参数。否则,每次替换文件都会发生在您的示例中。

另外,您可以删除分配变量并直接使用$item属性:

Get-ADUser -identity $item.ADUsers -Properties flags -Server $item.Domain

更详细的故障排除:
$adusers = Import-Csv "c:\temp\adusers.csv" -Delimiter ";"
$adusers

如果 $adusers无法正确显示对象,请检查文件格式。

内部 foreach仅运行
Get-ADUser -identity $item.ADUsers -Properties flags -Server $item.Domain

如果未正确列出AD用户,请检查文件是否包含正确的标识和/或服务器。可接受的身份和/服务器名称格式可以在 Get-AdUser docs中找到。

根据您提供的文件:

The output file :

"#TYPE Selected.Microsoft.ActiveDirectory.Management.ADUser"
"samaccountname","userprincipalname","flags"
"account9","account9@Domain9.local",


我可以看到两件事:
  • 您可以使用-NoTypeInformation摆脱第一行
  • 如您所见,仅最后一行表示从AD中成功获取数据,并且您的-Append只需要Export-CSV
  • 关于powershell - CSV空,以从广告用户导出自定义属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51784355/

    26 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com