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

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

Ответить
Настройки темы
PowerShell - поиск по части IP адреса в CSV файле

Аватара для God-of-Chaos

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


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


Конфигурация

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


Вложения
Тип файла: zip list.zip
(468 байт, 2 просмотров)
есть первый список - список IP адресов, из этих IP адресов нам необходимы только первые три октета, получаем данный список состоящий только из первых трех октетов следующим образом:

Цитата:
$ALL_IP_ADDRESS = @(Get-Content -Path "C:\Users\Admin\Desktop\list1.txt")
$result_mas=@() #создаем пустой массив

foreach ($IP in $ALL_IP_ADDRESS)
{
$result = $IP.Remove($IP.LastIndexOf('.'))
$result_mas += $result

}

$result_mas | Select-Object -Unique | Set-Content -PassThru "C:\Users\Admin\Desktop\list_octet1.txt"

есть второй список - файл csv состоящий из IP адресов и описания с разделителем ";"
необходимо взять первые три октета из первого списка и сравнить со вторым списком, и если есть совпадение записать данные в файл в виде
Цитата:
первые три октета из первого списка - строчка из второго файла
если есть несколько совпадений, то должно быть:
Цитата:
первые три октета из первого списка - строчка из второго файла
- строчка из второго файла
- строчка из второго файла
примеры файлов во вложении

-------
~~~ Только Бог может судить Меня ~~~


Отправлено: 16:04, 05-11-2017

 

Ветеран


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

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


Код: Выделить весь код
gc list1.txt | %  {$f = gc list2.csv}{
	$ip = $_ -replace "\.\d+$"
	if(($r = $f -match $ip)) {$ip+" - " +($r -join "`n- ")}
}
Это сообщение посчитали полезным следующие участники:

Отправлено: 00:23, 06-11-2017 | #2



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

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


Аватара для God-of-Chaos

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


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

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


Цитата Kazun:
$ip = $_ -replace "\.\d+$" »
А можно чуть подробнее, что в данном случае выполняется?

-------
~~~ Только Бог может судить Меня ~~~


Отправлено: 09:50, 06-11-2017 | #3


Ветеран


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

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


Цитата God-of-Chaos:
А можно чуть подробнее, что в данном случае выполняется? »
А просто взять и посмотреть, не? Быстрее ж будет.

Из строки с IP-адресом удаляется последняя часть тетрады (вместе с точкой). Для поиска используется шаблон регулярного выражения.
Это сообщение посчитали полезным следующие участники:

Отправлено: 10:45, 06-11-2017 | #4



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

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

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
CMD/BAT - Поиск и сортировка файлов по части названия registeruser1 Скриптовые языки администрирования Windows 4 04-05-2017 09:21
CMD/BAT - [решено] пропинговать ip адреса заданные в txt файле baradan2000 Скриптовые языки администрирования Windows 4 17-04-2017 12:19
CMD/BAT - [решено] Поиск в html файле ip адресов и копирование их в новый txt. 666egor666 Скриптовые языки администрирования Windows 10 02-05-2015 19:46
CMD/BAT - Поиск в html файле ip адресов и копирование их в новый txt. 666egor666 Тест-форум 0 30-04-2015 11:31
PowerShell - [решено] Поиск и удаление дублей в csv-файле IvanXXL Скриптовые языки администрирования Windows 4 19-07-2011 13:14




 
Переход