Jika saya memiliki file besar dan perlu membaginya menjadi 100 megabyte, saya akan melakukannya
split -b 100m myImage.iso
Itu biasanya memberi saya sesuatu seperti
xaa
xab
xac
xad
Dan untuk mengembalikan mereka, saya telah menggunakan
cat x* > myImage.iso
Sepertinya harus ada cara yang lebih efisien daripada membaca setiap baris kode dalam sekelompok file dengan cat
dan mengarahkan output ke file baru. Seperti cara hanya membuka dua file, menghapus EOF
penanda dari yang pertama, dan menghubungkannya - tanpa harus melalui semua konten.
Windows / DOS memiliki perintah salin untuk file biner. Bantuan menyebutkan bahwa perintah ini dirancang untuk dapat menggabungkan beberapa file. Ini bekerja dengan sintaks ini: ( /b
untuk mode biner)
copy /b file1 + file2 + file3 outputfile
Apakah ada yang serupa atau cara yang lebih baik untuk bergabung dengan file besar di Linux daripada kucing?
Memperbarui
Tampaknya itu cat
sebenarnya cara yang benar dan cara terbaik untuk bergabung dengan file. Senang mengetahui saya telah menggunakan perintah yang benar selama ini :) Terima kasih semuanya atas tanggapan Anda.
cat x*
Anda dapat mempertimbangkan ekspansi brace shell, cat xa{a..g}
yang memperluas urutan yang ditentukan untuk cat
xaa xab xac xad xaf xaf xag
cat x*
? Apakah pengaturan lokal baru juga tidak mempengaruhi split
sehingga jika split
dan cat x*
digunakan pada sistem yang sama mereka akan selalu berfungsi?
split.c
di GNU Coreutils, akhiran dibangun dari array tetap karakter: static char const *suffix_alphabet = "abcdefghijklmnopqrstuvwxyz";
. Akhiran tidak akan terpengaruh oleh lokal. (Tapi saya tidak berpikir ada orang waras yang akan memesan ulang huruf kecil; bahkan EBCDIC mempertahankan pesanan standar mereka.)
cat x*
, karena urutan file tergantung pada pengaturan lokal Anda. Lebih baik mulai mengetikcat x
, daripada menekan Esc dan kemudian*
- Anda akan melihat urutan file yang diperluas dan dapat mengatur ulang.