#!/usr/bin/perl -w use strict; open(FILE,"file.txt") or die "Cant open file.txt: $!"; 1 while ; my $line=$.-30; $.=0; open(FILE,"file.txt") or die "Cant open file.txt: $!"; open(FILE2,">file2.txt") or die "Cant create file2.txt: $!"; while() { print FILE2 $_; insert(*FILE2) if $.==$line; } rename("file2.txt","file.txt") or die "Cant rename file: $!"; sub insert { my $fh=shift; print "Inserting at line $line\n"; print $fh "$_\n" for 0 .. 15; }