একত্রে থাকা ফাইলগুলি স্ট্যান্ডার্ড সরঞ্জামগুলির সাথে সংক্ষেপণ উন্নত করতে পারে, যেমন gzip, bzip2, xz?
আমি দীর্ঘদিন ধরে এটিকে কেস বলে মনে করেছি তবে এটি কখনই পরীক্ষিত হয়নি। যদি আমাদের সাথে একই রেকর্ড বাইটগুলির 20Mb ফাইলের 2 কপি থাকে, তবে একটি চতুর সংক্ষেপণ প্রোগ্রাম যা বুঝতে পারে যে এটি পুরো টার্বলকে প্রায় 20Mb পর্যন্ত সঙ্কুচিত করতে পারে।
আমি কেবল gzip, bzip2, এবং xz ব্যবহার করে এই পরীক্ষার চেষ্টা করেছি 1) এলোমেলো বাইটের একটি ফাইল, 2) সেই ফাইলটির দুটি কপির একটি টারবাল এবং 3) সেই ফাইলটির দুটি কপির একটি বিড়াল। সমস্ত ক্ষেত্রে সংকোচনের ফলে ফাইলের আকার হ্রাস হয়নি। এটি 1 কেসের ক্ষেত্রে প্রত্যাশিত তবে 2 এবং 3 কেসের ক্ষেত্রে সর্বোত্তম ফলাফলটি হ'ল 40Mb ফাইলটি প্রায় 20 এমবিতে সঙ্কুচিত হতে পারে। এটি একটি সংক্ষেপণ প্রোগ্রামের জন্য দেখার জন্য একটি কঠিন অন্তর্দৃষ্টি, বিশেষ করে কারণ অতিরিক্ত কাজগুলি দূরত্বের, তাই আমি একটি নিখুঁত ফলাফল আশা করবো না তবে আমি এখনও বুঝতে পেরেছিলাম যে সেখানে কিছু সংকোচনের উপস্থিতি রয়েছে।
টেস্ট:
dd if=/dev/urandom of=random1.txt bs=1M count=20
cp random1.txt random2.txt
cat random1.txt random2.txt > random_cat.txt
tar -cf randoms.tar random1.txt random2.txt
gzip -k random* &
bzip2 -k random* &
xz -k random* &
wait
du -sh random*
ফলাফল:
20+0 records in
20+0 records out
20971520 bytes (21 MB) copied, 1.40937 s, 14.9 MB/s
[1] Done gzip -k random*
[2]- Done bzip2 -k random*
[3]+ Done xz -k random*
20M random1.txt
21M random1.txt.bz2
21M random1.txt.gz
21M random1.txt.xz
20M random2.txt
21M random2.txt.bz2
21M random2.txt.gz
21M random2.txt.xz
40M random_cat.txt
41M random_cat.txt.bz2
41M random_cat.txt.gz
41M random_cat.txt.xz
41M randoms.tar
41M randoms.tar.bz2
41M randoms.tar.gz
41M randoms.tar.xz
এটি কি আমার সাধারণত প্রত্যাশা করা উচিত?
এখানে সংকোচনের উন্নতি করার কোনও উপায় আছে?