1) не хочет выполняться tell(F), т.е. выполняется, но позиция всегда возвращается равная 0
вот кусок кода:
sysopen(F,$f,O_RDONLY);
binmode(F);
flock(F,1);
my $i=0;
my @ta=();
my $f_size=-s $f;
my $f_pos=tell(F);
while(sysread(F,my $data,$size)&&$i<256&&$f_pos<$f_size)
{
@tr=unpack($templ,$data);
$f_pos=tell(F)
print "$f_pos - $tr[0]
";
if($tr[1]==$aw){last}
$i++;
}
$tr[0]="http://blabla.ru";
sysseek(F,$f_pos-$size,0);
syswrite(F,pack($templ,@tr),$size);
Вот что выводит:
0 - [url]http://127.0.0.2/[/url]
0 - [url]http://127.0.0.7/[/url]
0 - [url]http://127.0.0.6/[/url]
0 - [url]http://127.0.0.5/[/url]
ЧЕМ МОЖНО ЗАМЕНИТЬ ЭТУ ФУНКЦИЮ ИЛИ КАК СДЕЛАТЬ ЧТОБЫ ОНА РАБОТАЛА?
ЧЕМ ОТЛИЧАЮТСЯ ФУНКЦИИ РАБОТЫ С ФАЙЛАМИ sysopen от open, sysread от read, syswrite от print sysseek от seek, какие лучше использовать?
В коммандной строке набираю perldoc -f ....
он мне отвечает :
Superuser must not run /usr/bin/perldoc without security audit and taint checks.
В чем проблема?