#!/usr/bin/perl
use Bio::SeqIO;
use Bio::Seq;
use Cwd;
use File::Path;
$location_dir=getcwd;
$location_dir=~s/\//\\/;
@file = glob("$location_dir\\*.filter");
foreach $file(@file){
open(DATA,"<$file") or die "Can't open $file";
@list = <DATA>;
foreach $list (@list){
@list_elm=split(" ",$list);
if($list_elm[0]=~/Target_F/){
$ORFF=$list_elm[1];
}
if($list_elm[0]=~/Target_P/){
$ORFP=$list_elm[1];
}
if($list_elm[0]=~/Target_R/){
$rev_seq= reverse ($list_elm[1]);
$rev_seq=~tr/[ATCGatcg]/[TAGCtagc]/;
$ORFR=$rev_seq;
}
if($list_elm[0]=~/Ic_F/){
$NF=$list_elm[1];
}
if($list_elm[0]=~/Ic_P/){
$NP=$list_elm[1];
}
if($list_elm[0]=~/Ic_R/){
$rev_seq= reverse ($list_elm[1]);
$rev_seq=~tr/[ATCGatcg]/[TAGCtagc]/;
$NR=$rev_seq;
}
if($list_elm[0]=~/Seq_N/){
$Seq_N=$list_elm[1];
}
if($list_elm[0]=~/Seq_min_length/){
$Seq_min_length=$list_elm[1];
}
if($list_elm[0]=~/Seq_max_length/){
$Seq_max_length=$list_elm[1];
}
if($list_elm[0]=~/Species_names/){
shift @list_elm;
@Species_names=@list_elm;
}
if($list_elm[0]=~/Merger_acquisition_bases/){
shift @list_elm;
@Merger_acquisition_bases=@list_elm;
}
}
close DATA;
}
foreach $list (@Species_names){
chomp $list;
$location_dir=getcwd;
$location_dir=~s/\//\\/;
@file = glob("$location_dir\\matched\\*.*");
$dirpath="$location_dir\\extractid";
mkdir ($dirpath);
foreach $file(@file){
open(DATA,"<$file") or die "Can't open $file";
print " successful import $file\n";
@file_id = <DATA>;
foreach $file_id(@file_id){
@file_ids=split(" ",$file_id);
if($file_ids[1]=~/$list/i){
open WH,">>$dirpath\\$list.id";
print WH "@file_ids\n";
close WH;
}
}
}
}
附件:Easyseq源码([5]extractid)
于 2024-08-04 12:06:30 首次发布