while( defined(my $head = ) && defined(my $seq = ) && defined(my $qhead = ) && defined(my $quality = ) ){ substr($head, 0, 1, '>'); my $temp = print $head, $seq; } close (FASTQIN); my %count_seq; open my $fh, '<:encoding(UTF-8)', $temp or die "Cannot open $temp $!"; while (<$fh>) { chomp; next if /^>/; next if length($_) > 30 or length($_) < 15; $count_seq{$_}++; } #### Use of uninitialized value $temp in open at test.pl line 44. Use of uninitialized value $temp in concatenation (.) or string at test.pl line 44. Cannot open No such file or directory at test.pl line 44. #### open my $fh, '<:encoding(UTF-8)', $temp or die "Cannot open $temp $!";