use Tie::File; tie my @lines, 'Tie::File', 'myfile.txt' or die 'tie failed'; unshift @lines, "a new line\n"; untie @lines;