forum.bitel.ru http://forum.bitel.ru/ |
|
Как прогрепать radius.log по определенному логину http://forum.bitel.ru/viewtopic.php?f=5&t=3173 |
Страница 1 из 1 |
Автор: | Dmitri [ 12 ноя 2009, 11:39 ] |
Заголовок сообщения: | Как прогрепать radius.log по определенному логину |
Уважаемые коллеги, большая просьба подсказать, как прогрепать radius.log на предмет всех записей по определенному логину. Никак не осилю. Каждая запись ведь многострочная. А еще бы и респонзы как-то зацепить все... |
Автор: | jack7 [ 13 ноя 2009, 16:06 ] |
Заголовок сообщения: | Re: Как прогрепать radius.log по определенному логину |
Код: #!/usr/bin/perl -W # j4ck, 2009 # find.pl use strict; use Fcntl; use Getopt::Std; my $file = "radius.log"; my %opts = (); my $count = 0; getopts('l:',\%opts); die("[!] В текущей директории не найден файл radius.log") unless -e $file; die("[!] Укажите аргументом -l искомый логин") unless $opts{l}; sysopen(MF,$file,O_RDONLY) or die("[!] Не могу открыть файл $file для чтения"); $/ = 'ACCOUNT:'; print "[~] Поиск логина $opts{l}..\n"; while(<MF>) { $count++; if(/User-Name=$opts{l}\n/) { print $_; } } print "\n\n[~] Поиск закончен, всего просмотрено $count записей\n"; close(MF); я пользуюсь таким, он должен быть в папке BGBillingServer/BGRadiusDialup/log например поиск логина 1234 find.pl -l 1234 |
Автор: | Dmitri [ 22 ноя 2009, 02:45 ] |
Заголовок сообщения: | Re: Как прогрепать radius.log по определенному логину |
Огромное спасибо! Будем использовать! |
Автор: | aardvark [ 23 ноя 2009, 17:41 ] |
Заголовок сообщения: | Re: Как прогрепать radius.log по определенному логину |
jack7, я видимо совсем ничего не знаю в перле, посему вопрос что делает (или чего ожидает конструкция) Код: while(<MF>) Это Match Found или что-то еще? ....Понял дескриптор это, совсем слепой стал. |
Автор: | jack7 [ 23 ноя 2009, 17:51 ] |
Заголовок сообщения: | Re: Как прогрепать radius.log по определенному логину |
aardvark писал(а): jack7, я видимо совсем ничего не знаю в перле, посему вопрос что делает (или чего ожидает конструкция) Код: while(<MF>) Это Match Found или что-то еще? ....Понял дескриптор это, совсем слепой стал. MF - дискриптор файла Код: while(<MF>) это построчный просмотр файла через указанный дискриптор, строкой считается набор символов между переменной $/ |
Страница 1 из 1 | Часовой пояс: UTC + 5 часов [ Летнее время ] |
Powered by phpBB® Forum Software © phpBB Group http://www.phpbb.com/ |