Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » PowerShell - [решено] Выводимое имя

Ответить
Настройки темы
PowerShell - [решено] Выводимое имя

Пользователь


Сообщения: 80
Благодарности: 1

Профиль | Отправить PM | Цитировать


Добрый День!
Возникла проблема с массовой заменой выводимого имени у пользователей.
Существует OU в котором есть общие учетные записи, необходимо по email общей учетной записи выгрузить displayName и присвоить его другому пользователю с таким же email.
Перепробовали все вся и встали в тупик, в лучшем случае в поле DisplayName добавляется сгруппированное выводимое имя из всех общих учетных записей. Ниже один из вариантов. Прошу помочь разобраться

Код: Выделить весь код
$user = Get-ADUser -SearchBase $OU  -Filter * -Properties Name, mail, Displayname, CanonicalName  |  Where-Object {$_.DistinguishedName -like "*Generic Account*"}
$DN = $user.displayname
$mail = $user.mail
Foreach ($mail1 in $mail) { 
$u = Get-ADUser -SearchBase $OU -Server  -Filter {mail -eq $mail1}  -Properties Name, mail, Displayname, CanonicalName, SamAccountName  |  Where-Object {$_.DistinguishedName -notlike "*Generic Account*"}
$email = $u.mail
$DN1 = $u.DisplayName
$sam = $u.SamAccountName
If ($email -eq $mail1) { 
ForEach ($us in $sam) {Set-ADUser -Identity $us -DisplayName "$DN"}
}
}

Отправлено: 06:27, 06-09-2019

 

Пользователь


Сообщения: 80
Благодарности: 1

Профиль | Отправить PM | Цитировать


Разобрались получилось следующее
Код: Выделить весь код
$users = Get-ADUser -SearchBase $OU -Filter * -Properties Name, mail, Displayname, CanonicalName  |  Where-Object {$_.DistinguishedName -like "*Generic Account*"}
Foreach ($user in $users)
{
$mail = $user.mail
$DN = $user.displayname 
Get-ADUser -SearchBase $OU  -Filter {mail -eq $mail}  -Properties Name, mail, Displayname, CanonicalName  |  Where-Object {$_.DistinguishedName -notlike "*Generic Account*"} | 
Foreach { Set-ADUser  $_ -Displayname "$dn"}
Единственное не совсем поняли что включает в себя "$_" так как без него запрашивает Identity, предположение есть конечно, что в него входят какие-то обязательные атрибуты

Отправлено: 09:03, 06-09-2019 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

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


Аватара для YuS_2

Crazy


Contributor


Сообщения: 1171
Благодарности: 487

Профиль | Отправить PM | Цитировать


Цитата lox-ness:
что включает в себя "$_" »
Код: Выделить весь код
man about_Automatic_Variables -s

-------
scio me nihil scire. Ѫ


Отправлено: 13:35, 06-09-2019 | #3


Пользователь


Сообщения: 80
Благодарности: 1

Профиль | Отправить PM | Цитировать


спасибо

Отправлено: 12:23, 09-09-2019 | #4



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » PowerShell - [решено] Выводимое имя

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Интерфейс - [решено] Как добавить пункт меню в контекстное меню, выводимое по Shift-у test009 Microsoft Windows 8 и 8.1 5 21-06-2017 20:30
2008 R2 - Имя пользователя и полное имя пользователя при организации общего доступа к файлам Kniaz Windows Server 2008/2008 R2 0 12-06-2013 13:19
Ошибка - "Неправильное имя папки. Задайте другое имя." при подключении webdav. R.I.G. Microsoft Windows 2000/XP 14 26-10-2012 00:58
CMD/BAT - [решено] Как убрать сообщение, выводимое на экран? Nun-Nun Скриптовые языки администрирования Windows 2 23-10-2010 17:18
короткое имя -->Длинное имя Nealles Программирование и базы данных 14 08-01-2004 10:15




 
Переход