#!/usr/bin/perl -w unless(@ARGV==3){ die "Usage: perl $0 <ID_lst> <input_fasta> <output> error:$!\n"; } my($lst, $input, $output)=@ARGV; open LST, $lst; open INPUT, $input; open OUTPUT, ">$output"; while(<INPUT>){ chomp; if($_ =~ /^>..*/){ $keys = $_; } else{ $hash{$keys} .= $_; } } while(<LST>){ chomp; if($_ =~ /^>..*/){ $ID = $_; print OUTPUT $ID."\n".$hash{$ID}."\n"; } else{ $ID = ">".$_; print OUTPUT $ID."\n".$hash{$ID}."\n"; } }