Я создаю инструмент, который позволит мне запрашивать значения домашнего каталога нашего пользовательского объекта AD и домашних каталогов связанного файлового сервера для создания отчетов и управления.
Я запросил AD и сохранил массив всех значений homedirectory и samaccountname для учетных записей в наших двух подразделениях.
Далее я вытащил значения $homedirectory
и провел их через split, используя регулярное выражение:
$ServShare = $Homedirectory -Split '(^\\\\([a-z0-9_.$●-]+)\\([a-z0-9_.$●-]+)\\)'
Теперь у меня есть длинный список, который отформатирован следующим образом:
\\ servername1 \ имя_общего_ресурса
servername1
имя_общего_ресурса
username1
\\ servername1 \ имя_общего_ресурса
servername1
имя_общего_ресурса
username2
\\ servername2 \ имя_общего_ресурса
servername2
имя_общего_ресурса
username3
и т.д ...
Мне нужно сохранить все значения \ servername \ sharename в новом массиве для дальнейшей работы (уникальные значения, запросы для получения серверов / общих ресурсов, с которыми мне нужно будет работать get-childitem
, и т. Д.).
Я проверил данные, и даже с некоторым различием в количестве папок в общих папках все нужные мне результаты находятся в 1-й и 6-й строках. Итак, строки 1, 6, 11, 16, 21, 26 и т. Д. ... из сотен строк результирующего списка.
И все же у меня возникают проблемы с тем, чтобы вытащить эти строки и сохранить их для дальнейшего использования. Я не выполнил много работы по синтаксическому анализу массивов и текста, и я был бы признателен за указатель в правильном направлении.