Страница 1 из 1
Нужна помошь в grep
Добавлено: 2010-11-12 9:23:21
bdv99
Добрый день!
Вопрос состоит в следующем есть N количество строк нужно из этих строк выбрать те которые содержат в себе ip адрес и слово established и вывести их количество.
Написал такое выражение но в конце его работы выдается 0.
Код: Выделить всё
snmpwalk -v 1 -c public 172.24.202.62 tcpConnEntry | grep -E '172.24.202.62.777 established' -c
Если писать так то значение выдает 0
Пробывал написать так но не уверен в его правильности
Код: Выделить всё
snmpwalk -v 1 -c Parameter 172.24.202.62 tcpConnEntry | grep 172.24.202.62.777 | grep established -c
Что не так в этом выражении? Подскажите.
Re: Нужна помошь в grep
Добавлено: 2010-11-12 10:00:09
dmtr
Код: Выделить всё
snmpwalk -v 1 -c Parameter 172.24.202.62 tcpConnEntry | grep 172.24.202.62.777
так вывод не пустой?
Re: Нужна помошь в grep
Добавлено: 2010-11-12 11:10:41
bdv99
с таким запросом вывод не пустой.
надо чтоб именно в сборке 172.24.202.62.777 established искало.
остановился пока на этом варианте
Код: Выделить всё
snmpwalk -v 1 -c Parameter 172.24.202.62 tcpConnEntry | grep 172.24.202.62.777 | grep established -c
Есть еще один вопрос потом это надо полученное значение вывести на графиг MRTG.
написал так
Код: Выделить всё
#!/bin/sh
/usr/local/bin/snmpwalk -v 1 -c Parameter nt2.npp tcpConnEntry | grep 172.24.202.62.777 | grep established -c
#echo "Port Spir 777"
Код: Выделить всё
SetEnv[NT2.777]: MRTG_INT_IP="172.24.202.62" MRTG_INT_DESCR="Traffic statistics on NT2 Port 777"
Title[NT2.777]: Traffic statistics on Port 777
Target[NT2.777]: `/usr/local/www/data/mrtg/run/nt2777.sh`
MaxBytes[NT2.777]: 150000
MaxBytes2[NT2.777]: 150000
Unscaled[NT2.777]: dwmy
PageTop[NT2.777]: <H1>statistics on Port 777</H1>
Но данные пока 0))
Re: Нужна помошь в grep
Добавлено: 2010-11-12 13:34:01
bdv99
Все я разобрался во всем.Тему можно закрывать.
Re: Нужна помошь в grep
Добавлено: 2010-11-12 13:54:19
FreeBSP
хорошим тоном считается рассказать о том как решил проблему, чтобы люди вставшие на те же грабли знали как решить проблему
Re: Нужна помошь в grep
Добавлено: 2010-11-15 23:51:53
BlackCat
bdv99 писал(а):Вопрос состоит в следующем есть N количество строк нужно из этих строк выбрать те которые содержат в себе ip адрес и слово established и вывести их количество.
Порядок "IP-адрес" "established" фиксированый?
bdv99 писал(а):Написал такое выражение но в конце его работы выдается 0.
Код: Выделить всё
snmpwalk -v 1 -c public 172.24.202.62 tcpConnEntry | grep -E '172.24.202.62.777 established' -c
grep понял это выражение следующим образом: найти все строки содержащие подстроки "172.24.202.62.777" и "established" разделённые пробелом.
bdv99 писал(а):Пробывал написать так но не уверен в его правильности
Код: Выделить всё
snmpwalk -v 1 -c Parameter 172.24.202.62 tcpConnEntry | grep 172.24.202.62.777 | grep established -c
Это как раз наиболее правильный вариант: найти все строки содержащие "172.24.202.62.777" и "established".
При фиксированом порядке в одно выражение это можно записать вот так:
Код: Выделить всё
grep "172[.]24[.]202[.]62[.]777.*established" -c
Обратите внимание на заключение точки в фигурные скобки, иначе она будет пониматься, как "любой символ".
Re: Нужна помошь в grep
Добавлено: 2010-11-17 15:14:47
bdv99
Сейчас опишу как решил проблему.
по поводу выражения в скрипте написал так
Код: Выделить всё
/usr/local/bin/snmpwalk -v 1 -c Parameter 172.24.202.62 tcpConnEntry | grep '172\.24\.202\.62.777.*established' -c
затем написал конфиг мртг который строил графики по текущим значениям но так ка в мртг требовал 2 значения IN,OUT скрипт модернизировал таким образом
Код: Выделить всё
#!/bin/sh
/usr/local/bin/snmpwalk -v 1 -c Parameter 172.24.202.62 tcpConnEntry | grep '172\.24\.202\.62.777.*established' -c
echo 0
После этого все заробатало но данные начали заносится в лог мртг но сам график не строился, немного покапался и нашел что в конфиге графика который необходимо вывести нужно дописать один параметр
он отвечает за вывод текущего значения
вышло так
Код: Выделить всё
Target[777]: `/usr/local/www/data/mrtg/run/nt2777.sh`
Title[777]: Traffic statistics on Port 777 Established
PageTop[777]: <H1>statistics on Port 777 Established</H1>
MaxBytes[777]: 150000
ShortLegend[777]: c/s
YLegend[777]: Conns / Min
LegendI[777]: In
LegendO[777]: Out
Legend1[777]: New inbound connections
Legend2[777]: New outbound connections
Options[777]: growright,nopercent,perminute,gauge