Hi there,
I finally decided myself to try Perl for a project and I got a question concerning BioPerl. I would like to read the result (blastxml) of a blast query directly from STDOUT. Is it possible ?
Here is my attempt:
my $command = "echo '>$SeqName\n$_[0]' | blastall -a 4 -p blastn -d $db $options";
open $fh,"$command |" || die("cannot run fasta cmd of $command: $!\n");
my $seqout = Bio::SeqIO->new(-fh => $fh, -format => 'blastxml');
Also, I manage to catch STDOUT using IO::CaptureOutput, but I cant feed it into Bio::SeqIO. Maybe there is something than can be done with that.
Any help will be appreciated. Thanks
As Fwip says in their answer below: this will not work because you're using Bio::SeqIO. BLAST XML is not a sequence format. Suggest you read the Bioperl documentation and try some simple examples to get comfortable.