|
|
ru.perl- RU.PERL ---------------------------------------------------------------------- From : Ivan Zerin 2:5035/47.13 10 May 2003 17:22:11 To : All Subject : Program --------------------------------------------------------------------------------
Привет, All!
Hарод помогите чайнику. Тупо перекатал код программы, но она не запускается.
Ошибка по-моему в синтаксисе.
$starttime = ();
$i = 0;
if (-e 'old.txt')
{
@filestats = stat('old.txt');
$filesize = $filestats[7];
open(OLD,"old.txt");
sysread (OLD, $old, $filesize);
close(OLD);
}
else
{
print "Auto Change: Hе удаётся обнаружить файл old.txt.\n";
exit(0);
}
if (-e 'new.txt')
{
@filestats = stat('new.txt');
$filesize = $filestats[7];
open (NEW, $new, $filesize);
close(NEW);
}
else
{
print "Auto Change: Hе удаётся обнаружить файл new.txt.\n";
exit(0);
}
$path = shift(@ARGV);
if (($path ne")&&(substr($path,-1) ne'\\'))
{
$path = $path .'\\';
}
open (FILELIST, "| dir $path\*\.\*htm\*/l/s/b->filelist.txt");
close (FILELIST);
if (-e 'filelist.txt')
{
@filestats = stat('filelist.txt');
$filesize = $filestats[7];
if ($filesize == 0)
{
print "Auto Change: Hет файлов для обработки.\n";
exit(0);
}
open (FILELIST, "filelist.txt");
}
else
{
print "Auto Change: Hе удаётся обнаружить файл filelist.txt.\n";
exit(0);
}
while ($filename = <FILELIST>)
{
chomp ($filename);
if (-e $filename)
{
@filestats = stat($filename);
$filesize = $filestats[7];
open (CURFILE, "$filename");
sysread (CURFILE, $filedata,$filesize);
close (CURFILE);
$chflag = 0;
$curpos = 0;
while (index($filedata, $old,$curpos) >=0)
{
$filedata = substr($filedata, 0,
index($filedata, $old,
curpos)) . $new . substr($filedata,
index,($filedata, $old,
$curpos) + length($old));
$curpos = $curpos +
length($new);
$chflag = 1;
}
if ($chflag ==1)
{
open (CURFILE, ">$filename");
syswrite (CURFILE, $filedata,
length ($filedata));
close(CURFILE);
print "Auto Change: изменён файл $filename\n";
$i++;
}
$j++;
}
else
{
print "Auto Change: не удаётся найти файл $filename\n";
}
}
close (FILELIST);
$jobtime = time() - $starttime;
print "Auto Change: Обработано $j файлов, из них обновлено:$i\.\n";
print "Общее время работы составило $jobtime секунд.\n";
if ($j -> 0)
{
print "Список всех обработанных файлов смотрите в filelist.txt.\n";
}
exit(0);
Подскажите ошибку.
Пока. Иван aka Sphinks.
... Ка-52 это душа погибшего Т-72!
--- --- --- --- ---> GoldED+/W32 1.1.5-1221
* Origin: Asta la Vista, Baby. (2:5035/47.13)
Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.perl/33283ebd0b86.html, оценка из 5, голосов 10
|