1. 程式人生 > >linux小技巧:快速合併壓縮檔案

linux小技巧:快速合併壓縮檔案

案例描述:

需要將Sample_test1_R1.fastq.gz和Sample_test2_R2.fastq.gz合併為test.fastq.gz

操作方法1:

先zcat再gzip

 zcat Sample_test_1.R1.fastq.gz Sample_test_2.R2.fastq.gz | gzip - > test.fastq.gz

操作方法2:

直接cat

cat Sample_test_1.R1.fastq.gz Sample_test_2.R2.fastq.gz > test2.fastq.gz

結果對比

壓縮檔案大小

ll test*.gz

-rw-r–r– 1 An Lau 197121 1321311 6月 13 10:14 test.fastq.gz
-rw-r–r– 1 An Lau 197121 1321742 6月 13 10:15 test2.fastq.gz

解壓縮檔案大小

gzip -cd test.fastq.gz > test.fastq
gzip -cd test2.fastq.gz > test2.fastq
ll test *.fastq

-rw-r–r– 1 An Lau 197121 7195186 6月 13 10:16 test.fastq
-rw-r–r– 1 An Lau 197121 7195186 6月 13 10:16 test2.fastq

對比檔案內容

zcat Sample_test_1.R1.fastq.gz Sample_test_2.R2.fastq.gz | wc

80000 100000 7195186

wc test*.fastq

80000 100000 7195186 test.fastq
80000 100000 7195186 test2.fastq
160000 200000 14390372 total

總結

雖然壓縮檔案大小不一樣,應該是壓縮率不同導致的,
但是不同方法出來的檔案大小和內容都是一樣的。
直接cat的速度肯定會比zcat … | gzip …快!
所有以後直接cat就可以了。