Назад | Перейти на главную страницу

Мне нужно перечислить всех пользователей в Active Directory, у которых нет данных в поле NAME, с помощью PowerShell

Мне нужно перечислить всех пользователей в AD, у которых нет записи в поле NAME (пример: smith, jon)

Пока у меня что-то вроде ниже

Get-ADUser -filter {Name -eq " "} | FT SamAccountName

Я знаю, что это не удается из-за пустых цитат.

По сути, мне нужен фрагмент кода, который «перечисляет всех пользователей, у которых есть пустое поле имени».

Если есть другой способ сделать это через PowerShell, или если я немного сбился с пути, пытаясь использовать пустые кавычки, дайте мне знать.

Любая помощь приветствуется.

Есть несколько способов сделать это:

Get-ADUser -LDAPFilter "(!GivenName=*)" | ft samAccountName

Get-ADUser -Filter * | Where {$_.GivenName -eq $Null -OR $_.Surname -eq $Null -OR $_.Name -eq $Null} | select samAccountName

Это должно сработать для вас.

Добавлена ​​вторая команда, которая проверяет, не заполнено ли какое-либо из полей «имя».

Если вы хотите, чтобы все пользователи Name атрибут либо NULL, либо пустой, либо состоящий только из пробелов, вы можете сделать это следующим образом:

Get-ADUser -Filter * | where {[System.string]::IsNullOrEmpty(($_.Name).Trim())} | select sAMAccountName