[Bioperl-l] SearchIO: write/read database

Chris Fields cjfields at uiuc.edu
Tue May 20 17:23:19 UTC 2008


On May 20, 2008, at 12:10 PM, Dave Messina wrote:

> Echoing what Sendu said, the most straightforward way to read output  
> from a
> program without writing to a file first is to open a pipe from the  
> program
> as a filehandle.
>
> e.g.
> my @args = ('/usr/bin/blastp', '/path/to/my/blastdb',
> '/path/to/my/blastquery');
> open (my $blast_fh, '-|', @args) or die "couldn't open blast stream";
>
> Now you can use that filehandle to read in data and manipulate just  
> as if
> you had read it in from a file (except of course since it's a stream  
> you
> can't rewind).
>
>
> Dave

I think that works with everything except Win32 (unless more progress  
has been made on that front), which if I recall doesn't deal well with  
pipes/forks.  That may have changed, though; anyone know?

chris



More information about the Bioperl-l mailing list