- 论坛徽章:
- 0
|
本帖最后由 elaine2017 于 2018-05-10 16:32 编辑
这是我写的脚本,就想问问我想同时输出多列应该怎么改,像我这里种写法太笨了。。。。。。
use strict ;
use warnings ;
if ($#ARGV<0)
{
print STDERR "usage: $0 infile output_file \n";
exit(1);
}
my $infile=$ARGV[0];
my $outfile=$ARGV[1];
my $UMI_1;
my $UMI_2;
open (IN, "$infile") or die "file1 cannot open \n";
open (OUT, ">$outfile") or die "$! error creating output file";
while (<IN>)
{
chomp;
my @f=split();
my @g=split(/\|/,$f[0]);
my $UMI_1= substr $g[1],0,12;
my $UMI_2= substr $g[1],12;
print OUT "$g[0]\t$UMI_1\t$UMI_2\t$f[1]\t$f[2]\t$f[3]\t$f[4]\t$f[5]\t$f[6]\t$f[7]\t$f[8]\t$f[9]\t$f[10]\t$f[11]\t$f[12]\t$f[13]\t$f[14]\t$f[15]\t$f[16]\n";
}
close IN;
close OUT;
|
|