use strict; use warnings; use feature 'say'; use Tie::File; my $file = 'test_file.txt'; tie @lines, 'Tie::File', $file or die "Unable to open file '$file': $!"; my $line_number = 1; foreach my $line (@lines) { say "$line_number: $line"; $line_number++; }