我有一个包含大约 50 个文件的文件夹。我想用这 50 个文件创建小型 tar.gz 文件(每个 10 mb)。
我尝试了 split 命令
tar cvzf - /dir | split --bytes=10MB - backup.tar.gz
这确实会将文件分割成更小的 tar.gz 文件,但它们不再可提取。(备份.tar.gzaa,备份.tar.gzabETC)
我怎样才能将它们拆分成多个 tar.gz 文件,每个文件都是可自提取的?
我想要类似的东西备份.tar.gz,备份1.tar.gz这样我就可以根据需要将单个文件复制到 Windows 机器。
提前致谢。
答案1
我想创建小型 tar.gz 文件(每个 10 MB)
我尝试了拆分命令 tar cvzf - /dir | split --bytes=10MB - backup.tar.gz
Split 分割文件。这样就很好了。但是 gzip 需要所有信息。因此,您需要再次连接所有先前的文件才能解压。
您可以创建大约 20 MB 的 tar 文件,然后对每个文件进行 gzip 压缩。调整大小,直到压缩后的文件大小降到 10 MB 以下。
由于压缩会随着内容的不同而变化,因此这是一个反复试验的过程。
我想要类似 backup.tar.gz、backup1.tar.gz 之类的东西,以便我可以根据需要将单个文件复制到 Windows 机器。
我能想到的最佳解决方案:选择大约 20MB 的文件。然后将它们打包成一个文件,然后压缩(使用 -z 进行 gzip 压缩)或使用任何其他程序。
并且假设所有文件都足够小,以便您可以从中明智地选择。