Я хочу извлечь строку с именем хоста из файла.Файлы, которые я ищу, являются журналами от различных сетевых коммутаторов.Я хочу извлечь имя хоста из каждого журнала, затем я хочу вернуть каждое имя порта и ошибку crc для порта.
Вот код и образец журнала ниже кода.Я выделил строки, которые я вытаскиваю из файлов журнала.
# This pulls the port numbers out of each file
[string[]]$port_counter = Select-String -Path C:\Users\tlyle\OneDrive\Documents\Log\*.txt -Pattern 'is up', 'is down'
# this pulls the crc errors out of each file
[string[]]$crc_logs = Select-String -Path C:\Users\tlyle\OneDrive\Documents\Log\*.txt -Pattern 'crc'
# Below I combine the arrays and print them out
$MaxLen = [Math]::Max($port_counter.Length, $crc_logs.Length)
$Result = @()
for ($i = 0; $i -lt $MaxLen; $i++) {
$Result += $port_counter[$i]
$Result += $crc_logs[$i]
}
$Result
Это в настоящее время требует от меня.
: GigabitEthernet1 / 1/1 работает, линейный протокол работает
: 0 ошибок ввода, 0 CRC, 0кадр, 0 игнорируется
: GigabitEthernet1 / 1/2 работает, линейный протокол работает
0 ошибок ввода, 0 CRC, 0 кадр, 0 игнорируется
, затем повторяется длякаждый файл в папке.
Вот как выглядит входной файл - Каждый файл имеет 48 портов - GigabitEthernet1 / 1/1 до 1/1/48 - я вытягиваю 2 строки для каждого порта в файле - выделено жирным шрифтом ниже - и сделайте это для каждого файла в каталоге .. Я хочу вытащитьпервая строка файла и возвращает ее перед информацией о порте и crc - для каждого файла - сначала будет показано имя хоста, затем ошибки портов и crc, затем перейдет к следующему файлу и покажет имя хоста один раз, затемпорты и ошибки CRC.,
Результаты команды "sh interfaces", отправленной на хост "10.16.156.76":
GigabitEthernet1 / 1/1 работает, линейный протокол работает
Портв течение 490 дней 3 часа 48 минут 56 секунд
Аппаратное обеспечение - GigabitEthernet, адрес - 609c.9f77.2d44 (bia 609c.9f77.2d44)
Автоматическая настройка скоростифактический 1 Гбит, настроенный дуплексный fdx, фактический fdx
Сконфигурированный режим mdi AUTO, фактический MDI
EEE Функция отключена
Член L2 VLAN ID 281, порт не помечен, состояние порта FORWARDING
Защита BPDUВключено, ROOT-защита отключена, Назначенная защита отключена
Включено подавление ошибок канала
STP настроен на ВКЛ, приоритет - level0, Mac-Learning включен
Обнаружение петли ВКЛЮЧЕНО
Flow Control is configвключено, оператор включен, согласование отключено
Зеркало отключено, монитор отключен
Mac-уведомление отключено
Не участвует ни в одном активном соединении
Не входит ни в один из настроенных соединительных линий
Имя порта - dev-wap
IPG MII 0 битов времени, IPG GMII 0 битов времени
MTU 10200 байтов
300 секунд скорость ввода: 21600 бит / с, 13 пакетов / сек, использование 0,00%
300 секунд скорость вывода: 126592 бит / с, 17 пакетов / с, загрузка 0,01%
1078349 пакетов ввода, 213724458 байтов, 0 без буфера
Получено 0 широковещательных рассылок, 3719 многоадресных рассылок, 1074630 одноадресных рассылок
0 ошибок ввода, 0CRC, 0 фрейм, 0 игнорируется
0 рун, 0 гигантов
1884404 выходных пакетов, 2300283173 байта, 0 опустошений
Передано 85 широковещательных сообщений, 138932 многоадресных рассылки, 1745387 одноадресных рассылок
0 ошибок вывода, 0коллизии
Параметр «Информация об агенте ретрансляции»: отключено
UC Очереди выхода:
Счетчики очереди Пакеты в очереди Отброшенные пакеты
0 1733399 0
1 1381 0
2 14 0
3 6245 0
4 1194 0
5 7 0
6 105 0
7 58847 0
MC Очереди на выход:
Счетчики очереди Пакеты в очереди Отброшенные пакеты
082570 0
1 25 0
2 595 0
3 23 0
GigabitEthernet1 / 1/2 работает, линейный протокол работает
Порт работает в течение 473 дней 9 часов 17 минут 50 секунд
Аппаратное обеспечение - GigabitEthernet, адрес - 609c.9f77.2d45 (bia 609c.9f77.2d45)
Настроенная скоростьавтоматический, фактический 1 Гбит, настроенный дуплексный fdx, фактический fdx
Сконфигурированный режим mdi AUTO, фактический MDIX
Функция EEE отключена
Член L2 VLAN ID 281, порт не помечен, состояние порта FORWARDING
защита BPDUВключено, ROOT-защита отключена, Назначенная защита отключена
Включено демпфирование ошибки соединения
STP настроен на ON, приоритет - level0, Mac-Learning включен
Обнаружение петли ВКЛЮЧЕНО
Flow Control isconfig включен, oper включен, согласование отключено
Зеркало отключено, монитор отключен
Mac-уведомление отключено
Не участвует ни в каких активных транках
Не является членом ни одного из настроенных транков
Имя порта - dev-wap
IPG MII 0 битов времени, IPG GMII 0 битов времени
MTU 10200 байтов
300 секунд Скорость ввода: 4704 бит / с, 2 пакета / с, загрузка 0,00%
Скорость вывода 300 секунд: 5320 бит / с, 3 пакета / с, загрузка 0,00%
170203 входных пакета, 37873738 байт, 0 без буфера
Получено 0 широковещательных рассылок, 3720 многоадресных рассылок, 166483 одноадресных рассылок
0ошибки ввода, 0 CRC, 0 фрейм, 0 игнорируется
0 рун, 0 гигантов
365548 выходных пакетов, 160575794 байта, 0 опустошений
Передано 85 широковещательных сообщений, 138931 многоадресных передач, 226532 одноадресных передач
0ошибки вывода, 0 коллизий
Параметр Информация агента ретрансляции: Отключено
Очереди выхода UC:
Счетчики очереди Пакеты в очереди Отброшенные пакеты
0 220453 0
1 83 0
2 10
3 641 0
4 973 0
5 3717 0
6 46 0
7 56422 0
MC Очереди на выход:
Счетчики очереди Пакеты в очереди Отброшенные пакеты
0 82569 0
1 25 0
2 595 0
3 23 0
ЗДЕСЬ ЧТО Я ХОЧУ, ЧТО ХОЧУ В КОНЦЕ РЕЗУЛЬТАТ БЫТЬ:
хост "10.16.156.76"
: GigabitEthernet1 / 1/1 подключен, линия протоcol up
: 0 ошибок ввода, 0 CRC, 0 кадров, 0 игнорируется
: GigabitEthernet1 / 1/2 работает, линейный протокол активирован
0 ошибок ввода, 0 CRC, 0 кадров, 0 игнорируется
и повторяется для каждого файла в папке.