|
Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » PowerShell - Как создавать несколько за раз ПК в AD |
|
PowerShell - Как создавать несколько за раз ПК в AD
|
Новый участник Сообщения: 17 |
Ммм... Ээээ... Ну в общем привет всем)
Есть ведь классический скрпит на создание компов в 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
|
Профиль | Отправить PM | Цитировать Спасибо!) Но для работы этого Пауэршеллу нужен модуль для АД. Вот скрипт для создания компов, как его к примеру на Windows Server 2003 запускать? Скрипт можно сделать так, чтоб он работал без модуля? Входные параметры можно без функции реализовать?? 2) Запускать,как и любой другой скрипт. 3) Скрипт работает без модуля,что за фантазии. 4) Можно. |
Отправлено: 10:44, 31-01-2012 | #11 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Новый участник Сообщения: 17
|
Профиль | Отправить PM | Цитировать 1. Ну не знаю, я пытался запустить скрипт на машине с WS 2008, он не запускается, говорит, что не найден модуль. На WS 2003 запускаю, ошибок не выдаёт, но и ничего не создаёт. Может я значения не так ввожу? (принтскрин выложил)
2. А как фаил со скриптом разрешением .ps1 в PS запустить? 4. А как не подскажете? |
Отправлено: 11:12, 31-01-2012 | #12 |
Ветеран Сообщения: 1259
|
Профиль | Отправить PM | Цитировать 1) Вот раз не знаете тогда не стоит говорить,а то как обычно ерунда получается.Где ошибки? Объявили Вы функцию,а кто ее выполнять будет или Вам без разницы,главное мифический модуль?
CrPC $path $first $last 2) .\script.ps1 или полный путь к файлу 3)Задать параметры в теле скприта и передать их функции. |
Отправлено: 11:17, 31-01-2012 | #13 |
Новый участник Сообщения: 17
|
Профиль | Отправить PM | Цитировать Вообще перестал чтото понимать***
я всё правильно делаю? |
Отправлено: 12:15, 31-01-2012 | #14 |
Ветеран Сообщения: 1259
|
Профиль | Отправить 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() } . .\crpc.ps1 CrPC $path $first $last |
Отправлено: 12:33, 31-01-2012 | #15 |
Новый участник Сообщения: 17
|
Профиль | Отправить 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
|
Профиль | Отправить PM | Цитировать .\crpc -path "LDAP://OU=comp,OU=in,dc=alonez,dc=local" -first 7 -last 9
|
Отправлено: 13:32, 31-01-2012 | #17 |
Новый участник Сообщения: 17
|
Профиль | Отправить PM | Цитировать Шикос!!))
Мои искренние извинения за проявленную тупость. Мне правда стыдно. |
Отправлено: 10:01, 01-02-2012 | #18 |
Новый участник Сообщения: 17
|
Профиль | Отправить 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
|
Профиль | Отправить 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 |
![]() |
Участник сейчас на форуме |
![]() |
Участник вне форума |
![]() |
Автор темы |
![]() |
Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
Как создавать видео фантастику? | 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 |
|