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

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

Ответить
Настройки темы
PowerShell - [решено] Index was outside the bounds of the array

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


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

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


В $b помещается массив, например, @("CN=Иванов Иван Иваныч,OU=Users,DC=corp,DC=ulsk,DC=loc", "CN=Семенов Семен Семеныч,OU=Users,DC=corp,DC=ulsk,DC=loc").
Далее необходимо выудить у данных учётных записей значения полей name, title и department. Я решил всё это засунуть в одноименные массивы $name, $title и $department.

Код: Выделить весь код
$name = @()
$title = @()
$department = @()

$b = @(Get-ADGroupMember $n | ForEach {$_.distinguishedName})

$nn = $b.Count - 1

for ($i=0;$i -le $nn ;$i++)
                {
                    Get-ADUser -Identity $b[$i] -Properties * | ForEach-Object {$name[$i] = $_.name; $title[$i] = $_.title; $department[$i] = $_.department}
                 }

Выскакивает ошибка:
Код: Выделить весь код
Index was outside the bounds of the array.
E:\PS.ps1:93 знак:81
+ ... orEach-Object {$name[$i] = $_.name; $title[$i] = $_.title; $department[$i] = $_. ...
+                    ~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : OperationStopped: (:) [], IndexOutOfRangeException
    + FullyQualifiedErrorId : System.IndexOutOfRangeException
 
Index was outside the bounds of the array.
E:\Docs\PS.ps1:93 знак:102
+ ... $i] = $_.name; $title[$i] = $_.title; $department[$i] = $_.department}
+                    ~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : OperationStopped: (:) [], IndexOutOfRangeException
    + FullyQualifiedErrorId : System.IndexOutOfRangeException
 
Index was outside the bounds of the array.
E:\Docs\PS.ps1:93 знак:125
+ ... i] = $_.title; $department[$i] = $_.department}
+                    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : OperationStopped: (:) [], IndexOutOfRangeException
    + FullyQualifiedErrorId : System.IndexOutOfRangeException
Собственно 93 знак:81 - это $name[$i] = $_.name.
$name[$i] = @($_.name) - тоже не спасает.

Что я не так делаю?

Отправлено: 14:30, 11-08-2014

 

Ветеран


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

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


Достаточно одной строки:
Код: Выделить весь код
Get-ADGroupMember $n -Recursive | Get-ADUser -Properties Name,Title,Department | Select Name,Title,Department
Это сообщение посчитали полезным следующие участники:

Отправлено: 16:06, 11-08-2014 | #2



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

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



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

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

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Как скрыть разрешение для сайта, чтоб не было index.html, а просто name.ru/index? maasja Вебмастеру 1 25-06-2009 19:10
HDD - Inserting an index entry into index tlt-Dmitriy Накопители (SSD, HDD, USB Flash) 0 31-05-2008 15:52
Загрузка - inserting an index entry into index $0 of file 32772 gennchik Microsoft Windows 2000/XP 0 29-10-2007 19:52
BSOD - chkdsk: Inserting an index entry into index $0 of file ramo Хочу все знать 4 16-08-2007 22:07
Использование index.html вместо index.php BYBY Вебмастеру 14 05-12-2006 14:06




 
Переход