كيفية استخدام "bzip2" لضغط الملفات

الشيء الوحيد الذي تعرفه جميعًا عن Linux هو أن هناك الكثير من التنوع. هناك المئات من توزيعات لينكس ، مع عشرات من بيئات سطح المكتب ، وأجنحة المكاتب المتعددة ، وحزم الرسومات وحزم الصوت.

هناك مجال آخر يوفر فيه Linux مجموعة متنوعة عندما يتعلق الأمر بضغط الملفات.

سيعرف مستخدمو Windows بالفعل ما هو ملف zip ، وبالتالي سيتم استخدام الأوامر " zip " و " unzip " لضغط وفك ضغط الملفات بتنسيق "zip".

طريقة أخرى لضغط الملفات هي استخدام الأمر "gzip" ولإلغاء ضغط ملف بملحق "gz" يمكنك استخدام الأمر "gunzip".

في هذا الدليل ، سأعرض لك أمر ضغط آخر يسمى "bzip2".

لماذا استخدم & # 34؛ bzip2 & # 34؛ أكثر من & # 34؛ gzip & # 34؟

يستخدم الأمر "gzip" أسلوب الضغط LZ77. تستخدم أداة الضغط "bzip2" خوارزمية "Burrows-Wheeler".

ما الطريقة التي ينبغي لك استخدامها لضغط ملف؟

إذا قمت بزيارة هذه الصفحة ، فسترى أنه تم مطابقة كل من طرق الضغط جنبًا إلى جنب.

يقوم الاختبار بتشغيل كل أمر باستخدام إعدادات الضغط الافتراضية وسوف ترى أن الأمر "bzip2" يظهر في الأعلى عندما يتعلق الأمر بتقليل حجم الملفات.

ومع ذلك ، إذا نظرت إلى الوقت المستغرق لضغط الملف يستغرق وقتًا أطول للقيام بذلك.

تجدر الإشارة إلى العمود الثالث على المخطط المسمى "lzmash". هذا يعادل تشغيل الأمر "gzip" مع ضبط مستوى الضغط على "-9" أو وضعها في الإنجليزية ، "الأكثر مضغوطًا".

يستغرق الأمر "lzmash" وقتًا أطول من الأمر "gzip" بشكل افتراضي ولكن يتم تقليل الملف بشكل كبير وهو أصغر من المكافئ "bzip2". من الجدير بالذكر أيضا أن الأمر يستغرق وقتا أقل للقيام بذلك.

وبالتالي ، سيكون قرارك هو مقدار رغبتك في ضغط الملفات وطول المدة التي ترغب في انتظار حدوثها.

في كلتا الحالتين ، يكون الأمر "gzip" أفضل قليلاً في كلتا الحالتين.

ضغط الملفات باستخدام & # 34؛ bzip2 & # 34 ؛.

لضغط ملف باستخدام تنسيق "bzip2" ، قم بتشغيل الأمر التالي:

اسم الملف bzip2

سيتم ضغط الملف وسيكون له الآن الامتداد ".bz2".

سيحاول "bzip2" دائمًا ضغط الملف حتى إذا أصبح الملف أكبر كنتيجة. يمكن أن يحدث هذا عندما تقوم بضغط ملف تم ضغطه بالفعل.

إذا حاولت ضغط ملف ينتج عنه الملف الذي يحمل نفس الاسم كملف مضغوط موجود ، فسيحدث خطأ.

على سبيل المثال ، إذا كان لديك ملف يسمى "file1" ويحتوي المجلد بالفعل على ملف يسمى "file1.bz2" ، عند تشغيل الأمر "bzip" سترى الإخراج التالي:

bzip2: ملف file1.bz2 الإخراج موجود بالفعل

كيف لضغط الملفات

هناك العديد من الطرق المختلفة لفك ضغط الملفات التي لها ملحق "bz2".

يمكنك استخدام الأمر "bzip2" كما يلي:

bzip2 -d filename.bz2

سيؤدي ذلك إلى إلغاء ضغط الملف وإزالة الامتداد "bz2".

إذا كان إلغاء ضغط الملف يؤدي إلى استبدال الملف الذي يحمل نفس الاسم ، فسترى الخطأ التالي:

bzip2: يوجد بالفعل اسم ملف الإخراج

طريقة أفضل لفك ضغط الملفات بامتداد "bz2" هي استخدام الأمر "bunzip2". مع هذا الأمر لا تحتاج إلى تحديد أي مفاتيح كما هو موضح أدناه:

bunzip2 filename.bz2

يعمل الأمر "bunzip2" بالطريقة نفسها تمامًا مثل الأمر "bzip2" مع رمز التبديل ناقص d (-d).

يمكن لأمر "bunzip2" استخراج أي ملف صالح تم ضغطه باستخدام "bzip" أو "bzip2". بالإضافة إلى فك الضغط عن الملفات العادية ، يمكن أيضًا فك ضغط ملفات tar التي تم ضغطها باستخدام الأمر "bzip2".

بشكل افتراضي ، تكون ملفات tar التي تم ضغطها باستخدام الأمر "bzip2" ذات الامتداد ".tbz2". عند إلغاء ضغط هذا الملف باستخدام الأمر "bunzip2" يصبح اسم الملف "filename.tar".

إذا كان لديك ملف صالح تم ضغطه باستخدام "bzip2" إلا أنه يحتوي على امتداد مختلف عن "bzip2" ، فسيقوم بفك ضغط الملف ولكنه سيضيف امتداد ".out" إلى نهاية الملف. على سبيل المثال "myfile.myf" سيصبح "myfile.out".

كيفية فرض الملفات لتكون مضغوط

إذا كنت تريد أن يقوم الأمر "bzip2" بضغط ملف بغض النظر عما إذا كان الملف ذو الامتداد "bz2" موجودًا بالفعل ، فيمكنك استخدام الأمر التالي:

bzip2 -f myfile

إذا كان لديك ملف يسمى "myfile" وآخر يسمى "myfile.bz2" ، فستتم الكتابة فوق الملف "myfile.bz2" عند ضغط "myfile".

كيف تحافظ على كلا الملفين

إذا كنت تريد الاحتفاظ بالملف الذي تقوم بضغطه والملف المضغوط ، يمكنك استخدام الأمر التالي:

bzip2 -k myfile

سيؤدي هذا إلى الاحتفاظ بملف "myfile" ولكن أيضًا ضغطه وإنشاء ملف "myfile.bz2".

يمكنك أيضًا استخدام المفتاح k (- k) ناقص مع الأمر "bunzip2" للاحتفاظ بكل من الملف المضغوط وملف غير مضغوط أثناء إلغاء ضغط الملف.

اختبر صلاحية A & # 34؛ bz2 & # 34؛ ملف

يمكنك اختبار ما إذا كان الملف مضغوطًا باستخدام آلية الضغط "bzip2" باستخدام الأمر التالي:

bzip2 -t filename.bz2

إذا كان الملف ملفًا صالحًا ، فلن يتم إرجاع أي إخراج ، ولكن إذا كان الملف غير صالح ، فستتلقى رسالة تقول ذلك.

استخدام ذاكرة أقل عند ضغط الملفات

إذا كان الأمر "bzip2" يستخدم الكثير من الموارد أثناء ضغط الملف ، فيمكنك تقليل التأثير عن طريق تحديد مفتاح التحويل (ss) -s كما يلي:

bzip2 -s filename.bz2

لاحظ أنه يستغرق وقتًا طويلاً لضغط ملف باستخدام رمز التبديل هذا.

الحصول على مزيد من المعلومات عند ضغط الملفات

بشكل افتراضي عند تشغيل الأوامر "bzip2" أو "bunzip2" لا تتلقى أي إخراج ويظهر الملف الجديد فقط.

إذا كنت ترغب في معرفة ما يحدث عند ضغط أو إلغاء ضغط ملف يمكنك الحصول على إخراج أكثر مطولاً عن طريق تحديد رمز التبديل ناقص v (-v) كما يلي:

bzip2 -v اسم الملف

سوف يظهر الإخراج على النحو التالي:

اسم الملف: 1.172: 1 6.872 بت / بايت حفظ 14.66٪ 50341 في 42961

الأجزاء المهمة هي النسبة المئوية المحفوظة ، وحجم المدخلات وحجم المخرجات.

استعادة الملفات المكسورة

إذا كان لديك ملف "bz2" مكسور ، فسيكون البرنامج الذي سيتم استخدامه لمحاولة استرداد البيانات كما يلي:

bzip2recover filename.bz2