foreach my $dat1 (@data1){ foreach my $dat2 (@data2){ open (FH, "<", "file_$dat1\_$dat2.txt") or die "a horrible death $!"; .....do something...... } } #### open (FH, "<", "file_1.1_2.1.txt") or die "a horrible death $!";