Możesz użyć split
polecenia z -b
opcją:
split -b 1024m file.tar.gz
Można go ponownie złożyć na komputerze z systemem Windows, używając odpowiedzi @ Joshua .
copy /b file1 + file2 + file3 + file4 filetogether
Edycja : Jak stwierdził @Charlie w poniższym komentarzu, możesz chcieć jawnie ustawić przedrostek, ponieważ użyje on x
inaczej, co może być mylące.
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, ...
Edycja : edycja posta, ponieważ pytanie jest zamknięte, a najbardziej efektywne rozwiązanie jest bardzo zbliżone do treści tej odpowiedzi:
# 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
To rozwiązanie pozwala uniknąć używania dużego pliku pośredniego podczas (de) kompresji. Użyj opcji tar -C, aby użyć innego katalogu dla plików wynikowych. btw jeśli archiwum składa się tylko z jednego pliku, można uniknąć tar i używać tylko gzip:
# create archives
$ gzip -c my_large_file | split -b 1024MiB - myfile_split.gz_
# uncompress
$ cat myfile_split.gz_* | gunzip -c > my_large_file
W przypadku systemu Windows możesz pobrać przeniesione wersje tych samych poleceń lub użyć cygwin.