![]() |
Модераторы: ginnie, korob2001 |
![]() ![]() ![]() |
|
ginnie |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 1287 Регистрация: 6.1.2008 Где: Москва Репутация: 6 Всего: 49 |
Уважаемый ISQman, у Вас есть собственные мысли о том, как можно удалить совпадения? Поделитесь ими, а то давать готовые решения как-то скучно!
Это сообщение отредактировал(а) ginnie - 9.9.2008, 17:24 -------------------- Написать код, понятный компьютеру, может каждый, но только хорошие программисты пишут код, понятный людям. (Мартин Фаулер. Рефакторинг) |
|||
|
||||
gcc |
|
|||
![]() Агент алкомафии ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 2691 Регистрация: 25.4.2008 Где: %&й Репутация: нет Всего: 17 |
Поиск элементов одного массива, отсутствующих в другом массиве
не много тут http://npksv.ru/soft/perl/glava42.php |
|||
|
||||
gcc |
|
|||
![]() Агент алкомафии ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 2691 Регистрация: 25.4.2008 Где: %&й Репутация: нет Всего: 17 |
штатный вариант
Это сообщение отредактировал(а) gcc - 9.9.2008, 18:51 |
|||
|
||||
ISQman |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 66 Регистрация: 22.7.2008 Репутация: нет Всего: нет |
спасибо
книга оч помогла, решение вот какое:
с ипами |
|||
|
||||
ginnie |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 1287 Регистрация: 6.1.2008 Где: Москва Репутация: 6 Всего: 49 |
Уважаемый ISQman, в строке
форсировать скалярный контекст не нужно, т.к. $m - скаляр ![]() -------------------- Написать код, понятный компьютеру, может каждый, но только хорошие программисты пишут код, понятный людям. (Мартин Фаулер. Рефакторинг) |
|||
|
||||
lumen |
|
|||
Новичок Профиль Группа: Участник Сообщений: 5 Регистрация: 28.10.2008 Репутация: нет Всего: нет |
Может быть немного не по теме но что-то близкое.
Мне нужно получить с управляемых свичей (10 портовые) связку mac+port Есть скрипт на http://xgu.ru/downloads/mac2port
Скрипт как раз то что нужно, но в перле не силен и поэтому возникло пару вопросов. Он мне вываливает все порты и маки, а вот допустим мне надо получить связу mac+port кроме 9 и 10 порта. Подскажите что поправить? Это сообщение отредактировал(а) lumen - 28.10.2008, 10:30 |
|||
|
||||
ginnie |
|
||||||||||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 1287 Регистрация: 6.1.2008 Где: Москва Репутация: 6 Всего: 49 |
lumen, прежде всего надо поправить
на
т.к. в первом варианте . (точка) - любой символ Чтобы исключить порты 9 и 10 надо выяснить OID'ы (это такие идентификаторы типа .1.3.6.1.2.1.17.4.3.1.1) этих портов и не обрабатывать их в циклах. Выяснить OID'ы можно (мне так кажется) запустив в консоли
после определения OID'ов надо в циклы добавить после
строку
'OID_9' и 'OID_10' заменить на полученные значения. P.S. т.к. общая часть OID'ов удаляется, 'OID_9' и 'OID_10' будут короткими значениями. Если возникнут проблемы, выложите результат запуска snmpwalk, тогда будут конкретные варианты кода. Это сообщение отредактировал(а) ginnie - 28.10.2008, 12:32 -------------------- Написать код, понятный компьютеру, может каждый, но только хорошие программисты пишут код, понятный людям. (Мартин Фаулер. Рефакторинг) |
||||||||||
|
|||||||||||
lumen |
|
|||
Новичок Профиль Группа: Участник Сообщений: 5 Регистрация: 28.10.2008 Репутация: нет Всего: нет |
Прежде всего спасибо за то что откликнулись.
Самое главное я не пойму как скрипт сопоставляет эти oid ы. Вывод команды
Прикрепил в файле. Присоединённый файл ( Кол-во скачиваний: 3 ) ![]() |
|||
|
||||
ginnie |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 1287 Регистрация: 6.1.2008 Где: Москва Репутация: 6 Всего: 49 |
lumen, я неверно дал команду для портов. Должно быть
скрипт работает следующим образом: сначала получает MAC-адреса и сохраняет их в хэше, где ключами выступают окончания OID'ов во втором цикле скрипт обрабатывает порты, на которых обнаружились MAC-адреса, данные сохраняются в хэш, где ключами также являются окончания OID'ов. В конце скрипт для каждого окончания OID'а (это ключи хэша) выводит соответствие значений порта и MAC-адреса. В связи с этим предложенный в предыдущем моем сообщении алгоритм исключения портов неверен. Правильно будет во втором цикле проверять порт на исключение и удалять соответвующий ключ в хэше %mac_table примерно так if ($port == 9 or $port == 10) { delete $mac_table{$oid}; next; } Это сообщение отредактировал(а) ginnie - 28.10.2008, 16:41 -------------------- Написать код, понятный компьютеру, может каждый, но только хорошие программисты пишут код, понятный людям. (Мартин Фаулер. Рефакторинг) |
|||
|
||||
lumen |
|
|||
Новичок Профиль Группа: Участник Сообщений: 5 Регистрация: 28.10.2008 Репутация: нет Всего: нет |
Спасибо большое, помогло
![]() Это сообщение отредактировал(а) lumen - 29.10.2008, 08:24 |
|||
|
||||
ISQman |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 66 Регистрация: 22.7.2008 Репутация: нет Всего: нет |
![]() Спасибо всем за помощь, "привязка" была сделана для логирования людей, которые любят поменять себе ип либо мак. Добавил конект в мускул, связал с ipfw для бана подменщиков, вебом для управлением из вне, а также на некоторые виды вирусов. В следствии провайдер стал жить нормальной жизнью. Также прощу извенения что не появлялся и вовремя не отвечал на личные сообщения (просто жену себе завёл ![]() ![]() Это сообщение отредактировал(а) ISQman - 20.11.2008, 10:55 |
|||
|
||||
shamber |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1422 Регистрация: 5.9.2006 Где: Россия Репутация: 1 Всего: 18 |
![]() ISQman, с женой поздравляю ![]() ![]() |
|||
|
||||
![]() ![]() ![]() |
Правила форума "Perl: Системное программирование" | |
|
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, korob2001, sharq. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Perl: Системное программирование | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |