假设我有3个文件:1.txt、2.txt和3.txt,它们都已经被压缩了。我知道gzip允许使用cat组合多个文件:
cat 1.gz 2.gz 3.gz > 123.gz但是,当解压123.gz时,它将生成原始的3个文件。
是否可以合并这三个归档文件,使归档文件中的各个文件也合并为一个文件?
发布于 2013-05-23 21:47:09
令人惊讶的是,这实际上是可能的。
GNU zip man page states:可以拼接多个压缩文件。在这种情况下,gunzip将一次提取所有成员。
示例:
您可以像这样构建zip:
echo 1 > 1.txt ; echo 2 > 2.txt; echo 3 > 3.txt;
gzip 1.txt; gzip 2.txt; gzip 3.txt;
cat 1.txt.gz 2.txt.gz 3.txt.gz > all.gz然后解压出来:
gunzip -c all.gz > all.txtall.txt的内容现在应该是:
1
2
3这与以下内容相同:
cat 1.txt 2.txt 3.txt和-如你所要求的- "gunzip将一次提取所有成员“。
发布于 2013-05-23 21:48:27
要连接多个文件,请尝试:
gzip -c 1.txt > 123.gz
gzip -c 2.txt >> 123.gz
gzip -c 3.txt >> 123.gz随后,gzip -dc 123.gz将等同于cat 1.txt 2.txt 3.txt。
https://stackoverflow.com/questions/16715484
复制相似问题