use strict; use Tie::File; my @file; my $filename = 'test.txt'; tie @file, 'Tie::File', $filename or die "Couldn't open '$filename' : $!\n"; die "The second line in '$filename' is not blank !\n" unless $file[1] eq ''; # Remove first line : shift @file; # Remove second line : shift @file; # Replace first (former third) line : $file[0] = "New text";