Bạn có thể sử dụng split
lệnh với -b
tùy chọn:
split -b 1024m file.tar.gz
Nó có thể được lắp lại trên máy Windows bằng câu trả lời của @ Joshua .
copy /b file1 + file2 + file3 + file4 filetogether
Chỉnh sửa : Như @Charlie đã nêu trong nhận xét bên dưới, bạn có thể muốn đặt tiền tố một cách rõ ràng vì nó sẽ sử dụng x
khác, điều này có thể gây nhầm lẫn.
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, ...
Chỉnh sửa : Chỉnh sửa bài đăng vì câu hỏi đã đóng và giải pháp hiệu quả nhất rất gần với nội dung của câu trả lời này:
# 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
Giải pháp này tránh sự cần thiết phải sử dụng một tệp lớn trung gian khi (de) nén. Sử dụng tùy chọn tar -C để sử dụng một thư mục khác cho các tệp kết quả. btw nếu kho lưu trữ chỉ bao gồm từ một tệp duy nhất, tar có thể tránh được và chỉ sử dụng gzip:
# create archives
$ gzip -c my_large_file | split -b 1024MiB - myfile_split.gz_
# uncompress
$ cat myfile_split.gz_* | gunzip -c > my_large_file
Đối với các cửa sổ, bạn có thể tải xuống các phiên bản được chuyển của cùng một lệnh hoặc sử dụng cygwin.