wget 即时从文件中提取特定信息,而无需下载整个文件

wget 即时从文件中提取特定信息,而无需下载整个文件

我有一些文件(采用 .bam 格式(二进制))要从某个位置下载。我可以使用 wget 下载它们,然后只想从中提取一些特定信息。为此,我使用 samtools。我想知道的是,有没有一种方法可以即时从 bam 文件中提取我想要的内容,这样我就不必下载整个 bam 文件,然后提取我需要的内容,然后删除原始的内容bam 文件。

使用的命令是

wget link.bam

samtools view -h chr1 link.bam | samtools view -bS > condensed.bam

可以在不将整个原始 bam 文件下载到我的硬盘上的情况下完成此操作吗?我想这样做是因为我的空间不足并且这些文件很大。

希望收到你们的来信。

谢谢

答案1

标准方法是wget -O- _url_ | samtools view -h chr1 - | samtools view -bS >condensed.bam。如果您不确定,那是 O 代表输出,而不是零。

如果您知道有多少字节与下一个管道相关,则可以获得另一个优化步骤。假设samtools只需要前 1352 个字节。您可以使用curl(根据这个问题/答案wget有一个错误。)

curl -r 0-1352 | ...

相关内容