PDA

Показать полную графическую версию : Скрипт для перемещения пачки пользователей в AD


diga
20-01-2012, 20:37
Всем привет.
Помогите написать скрипт для перемещения 200 пользователей из одного OU в другой. Знаю есть dsmove, пользовался им, но ситуация немного сложнее.
Есть xls файл, где в столбце A прописаны ФИО сотрудников. Например Иванов Иван Иваныч. В AD забито только ФИ т.е. Иванов Иван. Соответственно необходимо как то подставлять только первые два слова в скрипт. Собственно пользователи сейчас хаотично разбросаны по структуре AD нужно их собрать по имеющейся информации в один OU.
Жду помощи, спасибо.
ПС
Примерно структуру скрипта представляю так:
1. Задать переменные ячеек xls файла т.е. A1, A2, A3 и т.д. и так до A203.
2. Считать данные из ячеек xls подставляя переменные (например из ячейки A123), при этом отбрасывая последнее слово.
3. Найти по этим данным пользователя в домене domen.local.
4. Переместить в нужный OU.

Помогите с написанием.

James Marsh
20-01-2012, 21:37
А мышкой поперетаскивать? Это в том случае если пользователи уже есть в АД.

diga
20-01-2012, 23:47
Как вы представляете себе руками переместить 5000 пользователей?
Давайте по существу.

zero55
21-01-2012, 13:14
Ctrl+A - правой кнопкой мыши "Move"

diga
21-01-2012, 13:39
Да сколько ж вас умников то!

James Marsh
21-01-2012, 18:18
Так сколько же пользователей? 200 или 5000? ИМХО 200 пользователей все-таки будет быстрее мышкой поперетягивать. Месяца 2-3 назад пришлось рассортировать по разным Подразделениям около 50 пользователей - заняло ну где-то полчаса.

zero55
21-01-2012, 20:15
Да сколько ж вас умников то! »
Ценю юмор.

У вас конечная цель какая?

diga
21-01-2012, 20:26
Окей. Распишу подробнее - есть домен, где хаотичным образом по разным OU существует большое число пользователей. Руководителям подразделений был сделан запрос о создании экселевского файлика в котором перечислены сотрудники их подразделения. Собственно конечная задача - разбросать пользователей по нужным OU имея тот самый экселевский файл с ФИО.

Iska
21-01-2012, 20:31
diga, так и переезжайте с данным вопросом в Скриптовые языки администрирования Windows (http://forum.oszone.net/forum-102.html). Желательно сразу приложить Ваш файл:
экселевского файлика в котором перечислены сотрудники их подразделения »
с образцом в несколько строк.

diga
21-01-2012, 20:33
Модераторы,
перенесите тему в нужный раздел! плз.

zero55
22-01-2012, 16:27
Пользователю в атрибуты пропишите их департаменты и напишите скрипт который бы искал пользователей в определенном OU и при условии нахождения их в подразделении Хэ перемещал бы их в соответствующий юнит.

diga
22-01-2012, 18:35
zero55,
С таким подходом можно всё руками сделать. Я к тому, что прописывая каждому пользователю атрибуты, мне не должно составить труда взять и переместить его в тот OU куда надо. Так что те же яйца, только жареные.

zero55
22-01-2012, 20:52
Я понимаю что легких путей вы не ищите?

Один раз нужно все сделать правильно и вручную :) дальше будет легче.

DmitriiV
23-01-2012, 08:30
... В AD забито только ФИ т.е. Иванов Иван...»Какому именно атрибуту присвоено такое значение?

Пользователю в атрибуты пропишите их департаменты и напишите скрипт который бы искал пользователей в определенном OU...»Всё делается без "ручных" операций, а поиск прекрасно выполняется по всему "дереву" AD.

diga
23-01-2012, 10:28
DmitriiV,
Надеюсь на вашу помощь.
Собственно атрибуты прописаны стандартно, в поле Имя и Фамилия карточки пользователя.

DmitriiV
23-01-2012, 16:01
Смотрите пример в прикреплённой книге.

diga
23-01-2012, 18:19
DmitriiV,
Спасибо огромное, ушел тестировать.
ПС
В каком формате указывать имя целевого подразделения?

DmitriiV
24-01-2012, 00:00
В каком формате указывать имя целевого подразделения?»Как значение атрибута name.
Например, если атрибут distinguishedName для подразделения имеет значение
ou=Тестовое подразделение,dc=domain,dc=local
то макросу надо указать значение
Тестовое подразделение

diga
24-01-2012, 10:25
DmitriiV,
А если же 'ou=Users,ou=Тестовое подразделение,dc=domain,dc=local'?

DmitriiV
24-01-2012, 10:40
Тогда - Users




© OSzone.net 2001-2012