it-swarm-id.com

Memecah file besar menjadi potongan-potongan kecil

Bagaimana cara membagi file besar, + 4GB menjadi file yang lebih kecil sekitar 500MB masing-masing.

Dan bagaimana cara saya merakit kembali lagi untuk mendapatkan file asli?

66
Stefan

Anda dapat menggunakan split dan cat .

Misalnya sesuatu seperti

$ split --bytes 500M --numeric-suffixes --suffix-length=3 foo foo.

(di mana nama file input adalah foo dan argumen terakhir adalah awalan keluaran). 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 yang dihasilkan, Anda dapat menggunakan mis .:

$ cat foo.* > foo_2

(dengan asumsi bahwa Shell mengurutkan hasil dari globbing Shell - dan jumlah bagian tidak melebihi batas argumen ketergantungan sistem)

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
80
maxschlepzig

Anda juga dapat melakukan ini dengan Manajer Arsip jika Anda lebih suka GUI. Lihat di bawah 'Simpan-> Opsi Lain-> Pisahkan ke dalam volume'.

4
user1498