您好我正在尝试运行脚本以将网络中的用户转换为数组,以便可以将其与我将要获得的其他数据(例如通讯组)一起输出到csv文件。
我正在运行的代码脚本发出错误:
方法调用失败,因为[System.Management.Automation.PSObject]不包含名为“op_Addition”的方法。
脚本是一个简单的for循环:
<configuration>
<system.webServer>
<staticContent>
<mimeMap fileExtension=".xyz" mimeType="application/text" />
</staticContent>
</system.webServer>
</configuration>
尝试在互联网上寻找解决方案,但他们似乎没有解决任何问题。
答案 0 :(得分:2)
不要为数组重用相同的变量名,以及要添加到数组的各个对象。在此,我已将PSObject
变量重命名为$ActiveDirectoryObject
:
$ActiveDirectoryList=@()
$UserDetails = get-aduser -filter {enabled -eq $true} -properties * | Select DisplayName,EmailAddress, SAMAccountName
$counter = 0
foreach($User in $UserDetails){
$ActiveDirectoryObject = New-Object PSObject
$Users = get-aduser $User.SAMAccountName -properties *
if(!$Users.EmailAddress -eq ""){
$counter++
$ActiveDirectoryObject | Add-Member -MemberType NoteProperty -Name "DisplayName" -Value $Users.DisplayName
$ActiveDirectoryObject | Add-Member -MemberType NoteProperty -Name "Email Address" -Value $Users.EmailAddress
write-host $Users.DisplayName
$ActiveDirectoryList += $ActiveDirectoryObject
}
}