- 论坛徽章:
- 0
|
回复 1# li11min22 - #!/usr/bin/perl -w
- use strict;
- my ($in1,$in2,$out3)=@ARGV;
- open FL1,"<$in1" or die ($!);
- open FL2,"<$in2" or die ($!);
- open OU,">$out3" or die ($!);
- my (%lib, %query);
- my (@name1,@name2);
- my $tmp="M";
- while(<FL2>){
- chomp;
- if (/^\>/ && $tmp=~/\w+/){
- push @name2,$_;
- }elsif(/\w+/ && $tmp=~/\w+/){
- $lib{$name2[-1]} = $tmp.$_;
- }
- $tmp=$_;
- }
- while(<FL1>){
- chomp;
- if(/^\>/){
- push @name1,$_;
- }elsif(/\w+/){
- $query{$name1[-1]}=$_;
- }
- }
- foreach my $key(keys %query){
- if ($query{$key}~~@lib{@name2}){
- print OU "$key\n$query{$key}\n"
- }
- }
- close FL1;
- close FL2;
- close OU;
复制代码 纯新手,望指点 |
|