dsmod user title - Значение для "Целевого объекта для этой команды" имеет неверный формат
Я хочу изменить поле заголовка большого количества пользователей в Active Directory, которое я перечислил в файле CSV.
Я могу получить каждый атрибут, связанный с пользователем, если я запустите это:
dsquery * domainroot -filter "(&(objectCategory=Person)(objectClass=User)(sAMAccountName=%UsrFld%))" -attr * -limit 0
Однако, если я попытаюсь сделать следующее, чтобы отредактировать поле "title", используя это:
dsquery * domainroot -filter "(&(objectCategory=Person)(objectClass=User)(sAMAccountName=%promptusername%))" -attr * -limit 0| dsmod user -title Disabled User
Я получаю следующую ошибку:
dsmod failed:Value for 'Target object for this command' has incorrect format.
Теперь, очевидно, DSMOD говорит мне, что он не может интерпретировать первую половину моего синтаксиса как объект для редактирования. У меня вопрос, как мне отредактировать поле заголовка с запросом, который я использую?
Заранее спасибо!
1 ответ
Проблема здесь в том, что выходные данные из dsquery представляют собой все атрибуты объекта пользователя, а dsmod просто ожидает userDN. К сожалению, я столкнулся с этим, пытаясь использовать dsquery * с почтовым полем. У меня была команда dsquery, которая вывела только attr of detachedName, но вывод был без кавычек.
Мой dsquery: dsquery * domainroot -filter "(&(objectcategory=person)(objectclass=user)(mail=somedude@contoso.com))" -attr diverishedName -L
Вывод: CN = Some Dude, OU = BitInspector, OU = Bit Makers, OU = Mfgs, DC = Contoso, DC = Com
Dsmod ожидает ввода с такими кавычками: "CN=Some Dude,OU=BitInspector,OU=Bit Makers,OU=Mfgs,DC=Contoso,DC=Com", потому что в userDN есть пробелы, и, следовательно, нужны кавычки.
К сожалению, я так и не смог понять, как поместить кавычки в вывод dsquery, поэтому я перешел к PowerShell.