Ну и для совсем извращенных еще пример - один массив, одно открытие файла:
$search_line="delete me!";
$offset=0;
open(FILE,"+@dat=;
foreach $line (@dat)
{
$line1=$line;
chomp $line1;
if($line1 eq $search_line)
{
splice @dat,$offset,1;
}
$offset++;
}
seek(FILE,0,0);
print FILE @dat;
truncate(FILE,tell(FILE));