I need to call variants on a large number of reads using both VarScan2
and BCFTools
. Both of these variant calling tools use mpileup
file as input to call the variants. VarScan2
command is straightforward, as we can specify the mpileup
file as a command parameter. The problem is, BCFTools
expects mpileup
to be piped from another command and I cannot find an input parameter to specify a mpileup
file that already exists (the one used with VarScan2
). It seems horribly inefficient to run the same command twice instead of reusing the file obtained from previous step (especially because generating mpileup
takes a substantial amount of time on my computer).
Is there a way to reuse an existing mpileup
file with BCFTools
?
I am using Nextflow
to run my pre-processing pipeline, so could it be possible that I can pipe an input channel with mpileup
into the BCFTools
's call
command?
I also tried doing
cat file.mpileup | bcftools call ...
but this does not seem to work.
Edit: cat file.mpileup | bcftools call ...
does work, which would be a solution to this question, however, answers offer other, even more elegant, solutions.
cat file.mpileup | bcftools
does work, and there was a typo in the first attempt. $\endgroup$