我在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
答案 0 :(得分:0)
您可以使用短shell脚本:
0 0
1 0
2 0
3 0
4 3
5 3
6 5
7 7
9 2
12 3
将您的路径设置为具有相同名称的变量。 在解压后取消注释最后一行以删除源文件。