GNU/Linux >> Belajar Linux >  >> Linux

Cara membagi file arsip besar menjadi beberapa file kecil menggunakan perintah Split di Linux

Meskipun salah satu alasan utama di balik pembuatan arsip adalah kemudahan penanganan dan transfer, terkadang file terkompresi itu sendiri begitu besar sehingga menjadi mimpi buruk untuk mentransfernya melalui jaringan, terutama saat kecepatan jaringan lambat.

Lantas, apa yang harus dilakukan dalam kasus seperti ini? Apakah ada solusi untuk masalah ini? Ya, salah satu solusi adalah dengan membagi file terkompresi menjadi bit yang lebih kecil, yang dapat dengan mudah ditransfer melalui jaringan. Di tempat tujuan, Anda dapat bergabung kembali dengan mereka untuk mendapatkan arsip asli.

Jika solusinya terdengar menarik dan Anda ingin memahami dengan tepat bagaimana hal ini dapat dilakukan di Linux, Anda akan senang mengetahui bahwa kita akan membahas semua detail penting langkah demi langkah dalam tutorial ini.

Sebelum melanjutkan, harap perhatikan bahwa semua instruksi dan perintah yang disebutkan dalam artikel ini telah diuji di Ubuntu 14.04.

Cara membagi arsip besar

Ada utilitas baris perintah - dijuluki Split - yang membantu Anda membagi file menjadi beberapa bagian. Itu diinstal di luar kotak di sebagian besar distribusi Linux, jadi Anda tidak perlu melakukan langkah tambahan apa pun untuk mengunduh dan menginstalnya. Berikut adalah sintaks dari perintah ini:

split [OPTION]... [INPUT [PREFIX]]

Di sini, INPUT mewakili nama file yang perlu dipecah menjadi bit yang lebih kecil, dan PREFIX adalah teks yang ingin Anda awali dengan nama file output. OPTION, dalam kasus kami, akan menjadi -b sehingga kita dapat menentukan ukuran file output.

Untuk memahami penggunaan Split melalui contoh, Anda harus terlebih dahulu memiliki file terkompresi yang ingin Anda pisahkan. Misalnya, saya memiliki file .zip 60MB berikut dalam kasus saya:

Berikut perintah Split beraksi:

Jadi seperti yang Anda lihat, menggunakan opsi -b, saya meminta perintah Split untuk memecah file .zip besar menjadi bagian yang sama masing-masing 20MB, memberikan nama lengkap file terkompresi serta teks awalan.

Inilah cara saya memverifikasi bahwa perintah Split benar-benar melakukan apa yang diminta:

Seperti yang terlihat dari output pada tangkapan layar di atas, tiga file dengan nama termasuk awalan yang saya berikan dan masing-masing berbobot 20MB diproduksi di output.

Tentu saja, selain file .zip, Anda juga dapat menggunakan metode yang disebutkan di atas untuk membagi jenis file terkompresi lainnya. Sebagai contoh, inilah cara saya menggunakan perintah yang sama yang telah kita bahas sebelumnya untuk membagi file .tar.xz:

Seperti yang sudah Anda pahami sekarang, jika Anda ingin membagi file menjadi beberapa bagian yang berukuran dalam MB, Anda perlu menggunakan huruf M dengan angka numerik yang Anda berikan pada baris perintah. Dan jika - seperti kasus yang baru saja kita bahas - ukuran file dalam KB, Anda harus menggunakan huruf K .

Sejauh ini, kami hanya menggunakan -b opsi yang ditawarkan oleh perintah Split; itu karena ia melakukan apa yang kita inginkan - beri tahu perintah untuk membagi file input berdasarkan ukuran yang mengikuti opsi ini pada baris perintah. Namun, bergantung pada kasus dan persyaratan Anda, Anda mungkin ingin menggunakan beberapa opsi lain yang disediakan oleh perintah Split.

Berikut adalah daftar opsi beserta penjelasan singkat tentang apa yang mereka lakukan:

  • -a , --suffix-length=N :menghasilkan akhiran dengan panjang N (default 2)
  • --additional-suffix=SUFFIX :menambahkan SUFFIX tambahan ke nama file.
  • -b , --bytes=SIZE :masukkan SIZE byte per file keluaran
  • -C , --line-bytes=SIZE :letakkan paling banyak SIZE byte baris per file keluaran
  • -d , --numeric-suffixes[=FROM] :gunakan sufiks numerik alih-alih alfabet. FROM mengubah nilai awal (default 0).
  • -e , --elide-empty-files :jangan buat file keluaran kosong dengan '-n'
  • --filter=COMMAND :tulis ke shell COMMAND; nama file adalah $FILE
  • -l , --lines=NUMBER :masukkan NUMBER baris per file keluaran
  • -n , --number=CHUNKS :menghasilkan file keluaran CHUNKS.
  • -u , --tanpa penyangga :segera salin input ke output dengan '-n r/...'

Sampai sekarang, kita hanya membahas bagaimana membagi arsip besar menjadi beberapa bagian yang lebih kecil. Tak perlu dikatakan, itu tidak ada gunanya sampai Anda juga tahu cara menggabungkannya kembali untuk mengambil file terkompresi asli. Jadi, inilah cara Anda melakukannya:

Tidak ada utilitas baris perintah khusus untuk menggabungkan potongan yang lebih kecil, karena perintah Cat lama yang baik mampu menangani tugas ini. Misalnya, inilah cara saya mengambil kembali Kaku-linux32.zip file melalui perintah Cat:

Anda dapat mengekstrak arsip yang diambil dan membandingkannya dengan yang asli untuk memverifikasi silang bahwa tidak ada yang berubah.

Kesimpulan

Jika Anda adalah pengguna Linux, dan pekerjaan sehari-hari Anda melibatkan bermain dengan file terkompresi besar dan membaginya dengan orang lain melalui jaringan, ada kemungkinan besar Anda mungkin ingin membagi arsip dalam beberapa kasus. Tentu saja, solusi yang disebutkan dalam tutorial ini mungkin bukan satu-satunya yang tersedia, tetapi ini pasti salah satu yang paling sederhana dan tidak memakan banyak usaha.

Jika Anda menggunakan pendekatan berbeda untuk membagi arsip besar dan kemudian menggabungkannya kembali, dan ingin berbagi solusi Anda dengan orang lain, Anda dapat melakukannya di komentar di bawah.


Linux
  1. Bagaimana melakukan perbandingan file baris demi baris di Linux menggunakan perintah diff

  2. Cara Mengganti Nama Banyak File Sekaligus di Linux

  3. Cara Mengurutkan File di Linux menggunakan Perintah Sortir

  1. Cara membagi iso atau file menggunakan perintah 'split' di Linux

  2. Cara membuat file sparse di Linux menggunakan perintah 'dd'

  3. Cara Kompres dan Dekompresi file .bz2 di Linux Menggunakan Perintah bzip2

  1. Cara Membagi Arsip 'tar' Besar menjadi Beberapa File dengan Ukuran Tertentu

  2. Cara Memisahkan Dan Menggabungkan File Dari Baris Perintah Di Linux

  3. Bagaimana cara membagi satu file teks menjadi beberapa file *.txt?