Bagaimana cara memecah file + 4GB yang besar menjadi file yang lebih kecil, masing-masing sekitar 500MB .
Dan bagaimana cara merakit ulang mereka lagi untuk mendapatkan file asli?
Bagaimana cara memecah file + 4GB yang besar menjadi file yang lebih kecil, masing-masing sekitar 500MB .
Dan bagaimana cara merakit ulang mereka lagi untuk mendapatkan file asli?
Jawaban:
Anda dapat menggunakan split dan cat .
Misalnya sesuatu seperti
$ split --bytes 500M --numeric-suffixes --suffix-length=3 foo foo.
(di mana nama file input foo
dan argumen terakhir adalah awalan output). Ini akan membuat file seperti foo.000 foo.001
...
Perintah yang sama dengan opsi pendek:
$ split -b 100k -d -a 3 foo foo
Anda juga dapat menentukan "--line-byte" jika Anda ingin membaginya pada batas-batas garis, bukan hanya jumlah byte yang tepat.
Untuk merakit kembali potongan-potongan yang dihasilkan lagi Anda dapat menggunakan misalnya:
$ cat foo.* > foo_2
(dengan asumsi bahwa shell mengurutkan hasil shell globbing - dan jumlah bagian tidak melebihi batas ketergantungan sistem argumen)
Anda dapat membandingkan hasilnya melalui:
$ cmp foo foo_2
$ echo $?
(yang seharusnya menghasilkan 0)
Atau, Anda dapat menggunakan kombinasi find / sort / xargs untuk merakit kembali potongan-potongan:
$ find -maxdepth 1 -type f -name 'foo.*' | sort | xargs cat > foo_3
man split cat md5sum
cat foo.{000..NNN}
mana NNN
bagian terakhir yang diharapkan. Dengan begitu Anda mendapatkan pesan kesalahan jika salah satu bagian hilang. Tetapi perhatikan bahwa -d
untuk mendapatkan sufiks numerik khusus untuk GNU split; pada platform lain Anda harus membuat hubungannya dengan foo.aaa
, foo.aab
, dll
split
, KB = 1000, K = 1024, MB = 1000 * 1000, M = 1024 * 1024 dll.
... cat > foo_3
seharusnya ... cat >>foo_3
?
rar
dan 7zip
sering digunakan dalam membuat perpecahan seperti itu lebih mudah untuk dipasang kembali lintas-platform
Anda juga dapat melakukan ini dengan Manajer Arsip jika Anda lebih suka GUI. Lihat di bawah 'Simpan-> Opsi Lain-> Pisahkan ke dalam volume'.