合并拆分tar.gz文件Linux命令的某些部分

时间:2015-01-27 19:10:10

标签: linux

我在linux服务器上有一个大的tar.gz文件(大约63 GB)。此文件包含大约1000个压缩的csv文件。我需要将csv文件的数据保存在数据库中。

由于服务器上的空间有限,我无法一次性提取整个文件。所以我将tar.gz文件拆分为5个部分(4个部分,15个GB和1个3GB),但没有将它们全部合并,因为服务器在完成提取时不会留下任何空间。我合并了前两部分来制作一个新的tar.gz文件并从中提取csv文件。

当我尝试合并最后3个部分时,它没有生成有效的tar.gz文件,并且无法提取该文件。这个问题不是因为服务器空间,因为我删除了从前两部分中提取后不再需要的文件。

有没有办法通过哪种方式将split tar.gz文件的最后3个部分合并为有效的tar.gz格式然后提取?

用于拆分的命令:

split -b 15G file.tar.gz parts

用于合并的命令:

cat parts* > combined.tar.gz

用于提取的命令:

tar zxvf file.tar.gz -C folderwhereextracted

1 个答案:

答案 0 :(得分:0)

您可以使用短shell脚本:

0   0
1   0
2   0
3   0
4   3
5   3
6   5
7   7
9   2
12  3

将您的路径设置为具有相同名称的变量。 在解压后取消注释最后一行以删除源文件。