for my $c (1..24) { my $filename = "chr$c"; open my $IN, '<', $filename or die "Cannot open '$filename' for reading: $!"; open my $OUT, '<', "$filename.out" or die "Cannot open '$filename.out' for writing: $!"; while (my $line = <$IN>) { ... } close $IN; close $OUT; }