perl语言问题,哪位大神帮忙解答下,感激不尽

F.strip.txt 和 R.strip.txt的数据都是一样格式的:

图片说明

代码如下,哪位帮忙解释下什么意思,逻辑是怎样的:

#!/usr/bin/perl
my $name=$ARGV[0];
my $dir=$ARGV[1];
my $cmd1="cat " . $dir . "/" . $name . ".F.strip.txt";
my $cmd2="cat " . $dir . "/" . $name . ".R.strip.txt";
my @qual_f=`$cmd1`;
my @qual_r=`$cmd2`;
my %f,%r;
# my $count_f=`cat quality/*F.strip.txt | wc -l`;
# $count_r=`cat quality/*R.strip.txt | wc -l`;
foreach(@qual_f){
    chomp;
    my ($pos,$avg,$mid,@others)=split;
    eval(${f}{$pos}{sum}+=$mid);
    ${f}{$pos}{count}+=1;
    }
foreach(@qual_r){
    chomp;
    my ($pos,$avg,$mid,@others)=split;
    eval(${r}{$pos}{sum}+=$mid);
    ${r}{$pos}{count}+=1;
    }


my $f_trim;
my $r_trim;
# print "processing R1...\n";
foreach my$k(sort {$b <=> $a} keys %f){
    my$value=${f}{$k}{sum}/${f}{$k}{count};
    # print $k,":",$value,"\n";
    $f_trim=(split(/-/,$k))[1];
    if($value > 28){last;}
    }
# print "processing R2...\n";
foreach my$k(sort {$b <=> $a} keys %r){
    my$value=${r}{$k}{sum}/${r}{$k}{count};
    # print $k,":",$value,"\n";
    $r_trim=(split(/-/,$k))[1];
    if($value > 28){last;}
    }
$f_trim +=5;
$r_trim +=5;
$f_trim=260 if $f_trim < 260;
$r_trim=240 if $r_trim < 235;
print "$name $f_trim $r_trim\n";

https://www.imooc.com/qadetail/302044