![]() |
скрипт заполнения поля e-mail учетных записей AD, используя user logon name
Необходим такой скрипт:
Для каждого пользователя Active Directory (включая вложенные OU) провести проверку на заполнение поля e-mail. Если в этом поле уже есть хоть один символ, то пропускаем. Иначе надо заполнить это поле по следующему принципу: берем значение "user logon name" текущего пользователя и конкатенируем без пробела с константой "@mail.ru" Большое спасибо всем откликнувшимся! |
Код:
Get-ADUser -Filter {Enabled -eq $true -and -not (mail -like '*')} | Foreach {Set-ADUser $_ -EmailAddress "$($_.samaccountname)@mail.ru"} |
Спасибо!
Знание - сила! |
не сработало. На контроллере домена создал файл ADfillemails.vbs , вставил в него эту строку.. ничего не произошло..
Windows PowerShell (C) Корпорация Майкрософт, 2009. Все права защищены. PS F:\Users\Администратор.IPIP> Get-ADUser -Filter {Enabled -eq $true -and -not (mail -like '*')} | Foreach {Set-ADUser $_ -EmailAddress "$($_.samaccountname)@kamastretch.com"} Имя "Get-ADUser" не распознано как имя командлета, функции, файла скрипта или выполняемой программы. Проверьте правильн ость написания имени, а также наличие и правильность пути, после чего повторите попытку. строка:1 знак:11 + Get-ADUser <<<< -Filter {Enabled -eq $true -and -not (mail -like '*')} | Foreach {Set-ADUser $_ -EmailAddress "$($_. samaccountname)@kamastretch.com"} + CategoryInfo : ObjectNotFound: (Get-ADUser:String) [], CommandNotFoundException + FullyQualifiedErrorId : CommandNotFoundException PS F:\Users\Администратор.IPIP> |
Имя "Get-ADUser" не распознано как имя командлета, функции, файла скрипта или выполняемой программы. - Поиск в Google:
Код:
Import-Module ActiveDirectory |
Отличная работа!
Так как я люблю готовые решения в сети находить то и тут складу все в кучу, чтоб другие пришли сюда из гугла и нашли готовые строки и много читать не пришлось..: Итак, идем в powershell вставляем это: Import-Module ActiveDirectory Get-ADUser -Filter {Enabled -eq $true -and -not (mail -like '*')} | Foreach {Set-ADUser $_ -EmailAddress "$($_.samaccountname)@mail.ru"} Mail.ru заменяем на другое если нужно. Всё. Проверил- все поля email корректно заполнены логинами пользователей +@domen.ru |
Как таким же образом заполнить пути к профилю, чтоб автоматически создались папки профилей.. чтоб у каждого появился путь к профилю с именем его логина?
|
Automatic creation of user folders for home, roaming profile and redirected folders. - http://blogs.technet.com/b/askds/arc...d-folders.aspx
|
Спасибо, а как сделать тоже самое, но только для каждого подразделения? Не во всём каталоге. У меня в одном подразделении почты @yandex.ru а в другой @mail.ru.
|
Код:
Get-ADUser -Filter {Enabled -eq $true -and -not (mail -like '*') -SearchBase "OU=users,OU=mailru,DC=doma,DC=in" |
Или так:
Код:
Get-ADUser -Filter "Enabled -eq 'true' -and mail -notlike '*'" -SearchBase "OU=users,OU=mailru,DC=doma,DC=in" |
Время: 11:05. |
Время: 11:05.
© OSzone.net 2001-