ПредишенСледващото

Добър ден.

Започнах да се движат на потребителите към съответната ОУ. След 15-ия потребителя да разбере, че процесът ще се забави за дълго време, а дори и разсейва от други "неотложни въпроси» 🙂. Реших да се автоматизира със скрипт. Реших да напиша сценарий за PowerShell'e. Той разполага с всички необходими komandletty да работи с АД обекти. Опитът с komandlettami имал, например, тук и тук.

Базови данни бяха предоставени като файл на Excel, където имаше за осигуряване на персонал, любезно предоставени от отдел персонал. С помощта на Excel филтри, изберете служители дивизия. Този списък се копира върху отделен лист. Резултатът е колона от имена. Колона нарича екранно.

Преместването на потребителите от списъка на десния ОУ

След това, този лист се е запазила, като същевременно се поддържа "тип файл" изберете "Unicode Text (* .txt)»

Когато се опитате да импортирате файла, открих, че българските символи са внесени от файл във формата на въпросителен знак. Да, и в конзолата на руската клавиатура оформление за въвеждане на знаци въпроси. Решението на този проблем е бил намерен в Интернет. Необходимо е да се промени кода оформлението на конзолата команда CHCP на 1251 и промените шрифта на Светъл Console.

Преместването на потребителите от списъка на десния ОУ

След тези стъпки, през цялото чудесно тя работи.

Така готов файл със списък на имената на желаната мерна единица се поставя в папката Scripts на диск C: \. Име usermove.txt

Така че по-долу, прилагани към самия скрипт:


# Connect Powershell модул за работа с AD
Внос-Модул ActiveDirectory -ErrorAction SilentlyContinue

# Промяна на страницата код, за да се промени достатъчно 1 пъти
CHCP 1251

# OU Къде мигрират потребители
$ TargetOU = «ОУ = Podrazdelenie_1, ОУ = Departament_1, ОУ = CompanyName_Users, DC = офис, DC = местно»

Местоположение #OU вземе потребители
$ SourceOU = »OU = CompanyName_Users, DC = офис, DC = местно»

# Присвояване на името на файла път до точните потребители
$ Impfile = «C: \ Scripts \ usermove.txt»

# Създаване на потребителите масив $ и се зарежда с потребители
$ Потребители = Внос-CSV $ impFile

# Старт на цикъла и обработва всеки ред от масива.
foreach ($ в потребителския $)
# Присвоява на променливата стойност $ dplname низ от колона на масива $ потребители DISPLAYNAME
$ Dplname = $ user.displayname

# В масив $ usermove на буксуване атрибути на потребителя, чието име дисплей (име на атрибут) сега е в променливата $ dplname.
# Търси се провежда в ОУ, съдържащ име, изброени в променливата $ sourceOU. Дълбочина на търсенето (избираем параметър -SearchScope OneLevel), само текущия ОУ, всички по-ниско ниво ОУ не видите.

$ Usermove = оформление aduser -f -SearchBase $ sourceOU -SearchScope OneLevel

# Е отпечатан за да се провери на променливите
пиша-домакин «Потребителят $ dplname»
отписване домакин
пиша-домакин «Прехвърлянето на $ usermove.distinguishedname»
отписване домакин

# Прехвърляне на употреба до желаната OU
Преместване ADObject -Identity $ usermove.distinguishedname -TargetPath $ targetOU
>

# Аз извод на екрана, за да се провери кои роуминг на потребителите.
$ targetOU

Това е всичко. Плановете на запълване на потребителя атрибути, като например:

Свързани статии

Подкрепете проекта - споделете линка, благодаря!