我需要压缩一个17-20 GB的大文件。我需要把它分成几个文件,每个文件大约1 1GB。
我通过谷歌搜索了解决方案,并找到了使用split和cat命令的方法。但它们根本不适用于大文件。此外,它们不能在Windows中工作;我需要在Windows机器上解压它。
发布于 2009-07-13 17:59:55
您可以使用带有-b选项的split命令:
split -b 1024m file.tar.gz它可以使用@Joshua的答案在Windows机上重新组装。
copy /b file1 + file2 + file3 + file4 filetogether编辑:正如@Charlie在下面的评论中所述,您可能希望显式地设置前缀,否则它将使用x,这可能会令人困惑。
split -b 1024m "file.tar.gz" "file.tar.gz.part-"
// Creates files: file.tar.gz.part-aa, file.tar.gz.part-ab, file.tar.gz.part-ac, ...编辑:编辑帖子,因为问题已经结束,最有效的解决方案非常接近这个答案的内容:
# create archives
$ tar cz my_large_file_1 my_large_file_2 | split -b 1024MiB - myfiles_split.tgz_
# uncompress
$ cat myfiles_split.tgz_* | tar xz此解决方案避免了在(解)压缩时使用中间大文件的需要。使用tar -C选项对生成的文件使用不同的目录。顺便说一句,如果归档文件只包含一个文件,则可以避免tar,只使用gzip:
# create archives
$ gzip -c my_large_file | split -b 1024MiB - myfile_split.gz_
# uncompress
$ cat myfile_split.gz_* | gunzip -c > my_large_file对于windows,您可以下载相同命令的移植版本或使用cygwin。
发布于 2009-07-13 15:21:31
如果您正在从Linux拆分,您仍然可以在Windows中重新组装。
copy /b file1 + file2 + file3 + file4 filetogether发布于 2009-07-13 15:25:59
使用tar to split into multiple archives
有很多程序可以在windows上处理tar文件,包括cygwin。
https://stackoverflow.com/questions/1120095
复制相似问题