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

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

Ответить
Настройки темы
PowerShell - Как создавать несколько за раз ПК в AD

Новый участник


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

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


Изменения
Автор: Alonez
Дата: 19-01-2012
Описание: заголовок не дописал(
Ммм... Ээээ... Ну в общем привет всем)
Есть ведь классический скрпит на создание компов в AD, как то так вроде, не уверен, что правильно, но всё же:
$SobjOU = [ADSI]" LDAP :// OU=kakayatotam,dc=kakoitotam,dc=local"
$SobjComputer = SobjOU. Create("computer", "CN=1")
$SobjComputer.Put("sAMAccountName", "1$")
$objComputeг.Put("userAccountControl", 4096)
$SobjComputer.SetInfo()

Так вот задача такова: нужен скрипт создающий не один, а скажем n компов и автоматически присваивающий каждому из них имя типа от PC_7 до PC_15,... Помогите пожалуйста!! Или может такой скрипт уже есть?
-
П.С: я в деле пауэршелл совсем новенький, маленький вопрос не по задаче: как перечислять?
Ну к примеру у меня скрипт на создание папки:

$objADSI = [ADSI]“LDAP://OU=a,dc=kakoitotam,dc=local”
$Class = “organizationalUnit”
$OU = “OU=comp”
$objOU = $objADSI.create($Class, $OU)
$objOU.SetInfo()
$OU = “OU=comp2”
$objOU = $objADSI.create($Class, $OU)
$objOU.SetInfo()

как с помощью одного скрипта создавать папки комп и комп2 сразу и в папке a и b?)
Или как меньшим количеством текста создавать папки комп и комп2?)

Отправлено: 13:32, 19-01-2012

 

Ветеран


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

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


Код: Выделить весь код
Спасибо!)
 Но для работы этого Пауэршеллу нужен модуль для АД.
 Вот скрипт для создания компов, как его к примеру на Windows Server 2003 запускать? 
Скрипт можно сделать так, чтоб он работал без модуля? 

Входные параметры можно без функции реализовать??
1) Причем тут модуль для AD,когда здесь везде используется Com интерфейс?
2) Запускать,как и любой другой скрипт.
3) Скрипт работает без модуля,что за фантазии.
4) Можно.
Это сообщение посчитали полезным следующие участники:

Отправлено: 10:44, 31-01-2012 | #11



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

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


Новый участник


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

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


Изображения
Тип файла: jpg Безымянный.JPG
(90.9 Kb, 4 просмотров)

1. Ну не знаю, я пытался запустить скрипт на машине с WS 2008, он не запускается, говорит, что не найден модуль. На WS 2003 запускаю, ошибок не выдаёт, но и ничего не создаёт. Может я значения не так ввожу? (принтскрин выложил)

2. А как фаил со скриптом разрешением .ps1 в PS запустить?

4. А как не подскажете?

Отправлено: 11:12, 31-01-2012 | #12


Ветеран


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

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


1) Вот раз не знаете тогда не стоит говорить,а то как обычно ерунда получается.Где ошибки? Объявили Вы функцию,а кто ее выполнять будет или Вам без разницы,главное мифический модуль?

CrPC $path $first $last

2) .\script.ps1 или полный путь к файлу

3)Задать параметры в теле скприта и передать их функции.

Отправлено: 11:17, 31-01-2012 | #13


Новый участник


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

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


Изображения
Тип файла: jpg Безымянный.JPG
(104.9 Kb, 5 просмотров)

Вообще перестал чтото понимать***


я всё правильно делаю?

Отправлено: 12:15, 31-01-2012 | #14


Ветеран


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

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


В таком виде функция не выполнится,для этого изменить скрипт на:

Код: Выделить весь код
param($path = "LDAP://OU=comp,OU=in,dc=alonez,dc=local",$first, $last)
 $SobjOU = [ADSI]$path
 $first..$last | Foreach {
 $SobjComputer = $SobjOU.Create("computer", "CN=ou_name_ws_$_")
 $SobjComputer.Put("sAMAccountName", "ou_name_ws_$_$")
 $SobjComputer.Put("userAccountControl", 4096)
 $SobjComputer.SetInfo()
 }
Или использовать dot-sourcing для импортирования в текущую сессию:
. .\crpc.ps1
CrPC $path $first $last

Отправлено: 12:33, 31-01-2012 | #15


Новый участник


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

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


изменил скрипт. ввод .\crpc создаёт один комп с номером 0.
ввод после этого CrPC $first=7 $last=9 - не распознаёт crpc как имя кмдлета или фкции

ввод .\crpc $first=7 $last=9 - "входная строка имеет неверный формат"

ввод .\crpc $first 7 $last 9 - "нельзя вызвать метод для выражения со значением null"

так всё же, на сколько я понял всё должно работать. Так как правильно вводить параметры??

Отправлено: 13:25, 31-01-2012 | #16


Ветеран


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

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


.\crpc -path "LDAP://OU=comp,OU=in,dc=alonez,dc=local" -first 7 -last 9

Отправлено: 13:32, 31-01-2012 | #17


Новый участник


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

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


Шикос!!))

Мои искренние извинения за проявленную тупость. Мне правда стыдно.

Отправлено: 10:01, 01-02-2012 | #18


Новый участник


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

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


param($path = "LDAP://dc=alonez,dc=local",$first, $last)
$SobjOU = [ADSI]$path
$first..$last | Foreach {
$SobjComputer = $SobjOU.Create("computer", "CN=ou_name_ws_$_")
$SobjComputer.Put("sAMAccountName", "ou_name_ws_$_$")
$SobjComputer.Put("userAccountControl", 4096)
$SobjComputer.SetInfo()
}

Как сделать ou_name входным параметром?

Отправлено: 12:03, 06-02-2012 | #19


Ветеран


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

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


param($path = "LDAP://dc=alonez,dc=local",$first, $last",$ou_name = "Test")

$SobjComputer = $SobjOU.Create("computer", "CN=$ou_name`_ws_$_")

Отправлено: 12:30, 06-02-2012 | #20



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

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

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Как создавать видео фантастику? stalker0113 Видео и аудио: обработка и кодирование 3 13-11-2011 23:50
Теория - [решено] как создавать свои программы bocik Программирование и базы данных 1 17-04-2010 11:50
Как правильно создавать группы? ipavels Microsoft Windows NT/2000/2003 2 25-12-2007 09:05
Как создавать CGI модули и на чем... Merlin de Kamelot Вебмастеру 10 09-02-2005 12:46
Как создавать дистрибутивы в C++ Builder 6 Xcode Программирование и базы данных 2 18-09-2003 02:35




 
Переход