используйте строгий и используйте предупреждений в начале скрипта.
использовать три аргумента открыть , например
open(my $fh, '<', "input.txt") or die $!;
используйте while loop для чтения строк из таких файлов, как,
while(my $line = <>){
#do something
}
скрипт выглядит так,
use strict;
use warnings;
print "Please input file name \n";
my $infile=<DATA>;
my $infile2=<DATA>;
open(my $in,'<', "$infile") or die $!;
open(my $junk,'<',"$infile2") or die $!;
open(my $out, '>' ,'convertedback.txt') or die $!;
my $line = <$in>;
my $line2 = <$junk>;
#pull first line from sample (name 1)
print $out "$line";
$line =<$in>;
#pull sequence line from FASTQ
print $out "$line";
#pull line from quality file *2
print $out "$line2";
$line2 =<$junk>;
print $out "$line2";
#Repeat until EOF
while($line =<$in>) {#for lines 5 to end
#Build Line 1
print "line 1 inf (name) is\n";
print $line2;
print $out "$line2";
#Build Line 2
print "line 2 inf (seq) is\n";
print $line;
print $out "$line";
#Build Line 3
$line2 =<$junk>;
print "line 3 inf (quality) is\n";
print $line2;
print $out "$line2";
#Build Line 4
$line2 =<$junk>;
print "line 3 inf (quality) is\n";
print $line2;
print $out "$line2";
}#while $line=<IN>
close ($in);
close ($out);
print "Done!\n";
__DATA__
outfilenew.txt
sample.qualities