0
点赞
收藏
分享

微信扫一扫

Linux中gz文件操作遇到的一些技巧和坑

目录

  • ​​不解压情况下获取gz超大文件的前/后几行?​​
  • ​​Perl读入gz文件操作?​​
  • ​​不能直接通过wc -l 来统计gz文件的行数​​


前提是gz文件超大,如上百G,肯定不能直接解压来做。

不解压情况下获取gz超大文件的前/后几行?

gzip -cd test.gz |head -100
gzip -cd test.gz |tail -100

Perl读入gz文件操作?

use PerlIO::gzip;
open IN,"<:gzip",$vcfgz||die"$!";

除了常规的Perl模块安装,还可用conda来直接安装PerlIO::gzip模块。

conda install -c bioconda perl-perlio-gzip
#或
conda install -c bioconda/label/cf201901 perl-perlio-gzip

不能直接通过wc -l 来统计gz文件的行数

平时习惯了直接用​​wc -l file​​​命令来查看文件行数,但用在gz等压缩文件中就不行了。虽然它不会报错,也会返回统计行数,但返回的实际是压缩文件的行数(往往比源文件多很多),而非源文件。给一个示例就能明白:
Linux中gz文件操作遇到的一些技巧和坑_源文件

查看压缩文件的命令,只有zcat、less等少数几个命令,如果要进行其他操作,不要偷懒,先用它们打开文件再用管道操作。


作者:Bioinfarmer

 若要及时了解动态信息,请关注同名微信公众号:Bioinfarmer。

举报

相关推荐

0 条评论