gpt4 book ai didi

powershell - 您可以在 Get-ADUser 上使用 -Filter 来过滤掉空字段吗?

转载 作者:行者123 更新时间:2023-12-02 09:12:15 27 4
gpt4 key购买 nike

从 Active Directory 抓取数据然后将其插入 SQL 表时,有没有办法过滤掉空字段?当我使用 -FilterGet-ADUser我认为这不是这样做的正确语法。

它没有说

The input object cannot be bound to any parameters for the command either because the command does not take pipeline input or the input and its properties do not match any of the parameters that take pipeline input


$ADARRAY = (Get-ADGroupMember -Identity "Domain Users" -Recursive |
Get-ADUser -Filter {-not (Mail -like "*")} -Properties Mail)

foreach($OBJECT in $ADARRAY) {
$NAME = $OBJECT.Name
$USER = $OBJECT.SamAccountName
$EMAIL = $OBJECT.Mail

$INSERT = "INSERT $TABLE VALUES ('$USER','$EMAIL', '$NAME')"
$SQL.CommandText = $INSERT

$SQL.ExecuteNonQuery()
}

$SQLCON.Close()

最佳答案

您收到该错误消息是因为 Get-ADUser可以 要么 从管道读取输入 使用参数 -Filter .如果你看一下 documentation您会看到 cmdlet 有 3 个参数集:

Get-ADUser
[-AuthType <ADAuthType>]
[-Credential <PSCredential>]
-Filter <String>
[-Properties <String[]>]
[-ResultPageSize <Int32>]
[-ResultSetSize <Int32>]
[-SearchBase <String>]
[-SearchScope <ADSearchScope>]
[-Server <String>]
[<CommonParameters>]
Get-ADUser
[-AuthType <ADAuthType>]
[-Credential <PSCredential>]
[-Identity] <ADUser>
[-Partition <String>]
[-Properties <String[]>]
[-Server <String>]
[<CommonParameters>]
Get-ADUser
[-AuthType <ADAuthType>]
[-Credential <PSCredential>]
-LDAPFilter <String>
[-Properties <String[]>]
[-ResultPageSize <Int32>]
[-ResultSetSize <Int32>]
[-SearchBase <String>]
[-SearchScope <ADSearchScope>]
[-Server <String>]
[<CommonParameters>]

其中的第二个将用于读取来自 Get-ADGroupMember 的管道输入。 (通过参数 -Identity ),但是当指定参数 -Filter 时您正在强制使用第一个,它不接受您的管道输入。

此外,从您的代码来看,您实际上想要具有 mail 的用户对象。属性。

使用 Where-Object像这样过滤,代码应该做你想要的:
$ADARRAY = Get-ADGroupMember -Identity 'Domain Users' -Recursive |
Get-ADUser -Properties Mail |
Where-Object { $_.Mail -like '*' }

如果你真的想要没有 mail 的用户对象属性改变条件 $_.Mail -like '*'$_.Mail -notlike '*' .

关于powershell - 您可以在 Get-ADUser 上使用 -Filter 来过滤掉空字段吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50867371/

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