查找具有特定 AD 属性非空的 AD 用户

查找具有特定 AD 属性非空的 AD 用户

我正在寻找一个脚本/Powershell命令,它将列出所有具有值的AD用户不是teletexterminalidentifier 属性中为 NULL,因此必须为它们设置一个值。

默认情况下未设置此属性,但我们有一个应用程序可以修改此属性(包含十六进制字符串),因此我正在寻找将此属性设置为某些值的所有用户的列表。

谢谢!

答案1

您应该能够使用以下方法获取用户:

Get-ADUser -Filter 'teletexterminalidentifier -like "*"'

然后,您可以通过管道命令来过滤您需要的内容:

Get-ADUser -Filter 'teletexterminalidentifier -like "*"' | Select-Object name,teletexterminalidentifier | Export-Csv file.csv

您可以从哪里Select-Object按名称选择要从中获取信息的字段。

答案2

我认为您要找的是 Where-Object cmdlet。以下是一些伪代码,可以帮助您:

Get-ADUser -Filter * | Where-Object {$_.teletexterminalidentifier -ne $null} | Export-Csv c:\list.csv

答案3

如果要根据此属性过滤用户,则必须将-properties开关添加到Get-ADuserCmdlet。事实上,如果没有此开关,它只会加载用户对象的基本属性(成员)。

因此,这里是实现您想要的完整命令:

Get-ADUser -filter * -Properties * | ? {$_.teletexterminalidentifier -ne $null} | Select-Object CN,SamAccountName,Teletexterminalidentifier

它会产生这样的结果: 在此处输入图片描述

然后您将能够将结果导出为所需的格式。

希望这可以帮助 !

相关内容