Код:
#!/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