#!/usr/bin/perl -w #usage: ./matchMF_HCgss.pl MFgss MF_match > MF_match.fsa my %SEQ; $/ = '>'; open(FILE, "$ARGV[0]") || die("Cannot open"); while(){ next unless /\w/; my @lines = split(/\n/, $_); my ($gi) = $lines[0] =~ /gi\|(\d+)/; shift @lines; my $seq = join('', @lines); $seq =~ s/\W+//g; $SEQ{$gi} = $seq; } close(FILE); $/ = "\n"; my %ID; open(FILE, "$ARGV[1]") || die("Canot open"); while(){ my ($gi) = /gi\|(\d+)/; next unless (defined $gi); next if(exists $ID{$gi}); $ID{$gi} = 1; print ">$gi\n$SEQ{$gi}\n"; } close(FILE);