الانجليزيةالفرنسيةإسباني

تشغيل الخوادم | Ubuntu > | Fedora > |


OnWorks فافيكون

xz - متصل بالإنترنت في السحابة

قم بتشغيل xz في مزود استضافة OnWorks المجاني عبر Ubuntu Online أو Fedora Online أو محاكي Windows عبر الإنترنت أو محاكي MAC OS عبر الإنترنت

هذا هو الأمر xz الذي يمكن تشغيله في مزود الاستضافة المجانية OnWorks باستخدام إحدى محطات العمل المجانية المتعددة عبر الإنترنت مثل Ubuntu Online أو Fedora Online أو محاكي Windows عبر الإنترنت أو محاكي MAC OS عبر الإنترنت

برنامج:

اسم


xz و unxz و xzcat و lzma و lzma و lzcat - ضغط أو فك ضغط ملفات .xz و. lzma

موجز


xz [خيار] ... [ملف] ...

unxz ما يعادل xz - فك الضغط.
xzcat ما يعادل xz - فك الضغط - stdout.
LZMA ما يعادل xz - صيغة = lzma.
unzma ما يعادل xz - صيغة = lzma - فك الضغط.
lzcat ما يعادل xz - صيغة = lzma - فك الضغط - stdout.

عند كتابة البرامج النصية التي تحتاج إلى فك ضغط الملفات ، يوصى دائمًا باستخدام ملحق
الاسم xz مع الحجج المناسبة (xz -d or xz -dc) بدلا من الأسماء unxz و xzcat.

وصف


xz هي أداة لضغط البيانات للأغراض العامة مع بناء جملة لسطر الأوامر مشابه لـ GZIP1
و bzip2(1). تنسيق الملف الأصلي هو .xz الشكل ، ولكن الإرث .lzma الشكل المستخدم
بواسطة LZMA Utils والتدفقات الخام المضغوطة بدون رؤوس تنسيق الحاوية هي أيضًا
أيد.

xz يضغط أو يضغط كل منهما ملف وفقًا لوضع التشغيل المحدد. إذا كان الجواب لا
ملفات تعطى أو ملف is -, xz يقرأ من الإدخال القياسي ويكتب البيانات المعالجة
لمعيار الإخراج. xz سوف يرفض (عرض خطأ وتخطي ملف) لأكتب
البيانات المضغوطة إلى الإخراج القياسي إذا كانت محطة. بصورة مماثلة، xz سيرفض القراءة
البيانات المضغوطة من الإدخال القياسي إذا كانت محطة.

ما لم - stdout محدد، ملفات غير - تتم كتابتها إلى ملف جديد اسمه
مشتق من المصدر ملف الاسم:

عند الضغط ، لاحقة تنسيق الملف الهدف (.xz or .lzma) ملحق بـ
اسم الملف المصدر للحصول على اسم الملف الهدف.

· عند فك الضغط ، ملف .xz or .lzma تتم إزالة اللاحقة من اسم الملف للحصول على
اسم الملف الهدف. xz يتعرف أيضًا على اللواحق .txz و .tlzويستبدلها بـ
ال .قطران لاحقة.

إذا كان الملف الهدف موجودًا بالفعل ، فسيتم عرض خطأ و ملف تم تخطيه.

ما لم تكن الكتابة إلى الإخراج القياسي ، xz سيعرض تحذيرًا ويتخطى ملف ملف إذا كان أي من
ينطبق ما يلي:

· قم بتقديم ليس ملفًا عاديًا. لا يتم اتباع الروابط الرمزية ، وبالتالي فهي ليست كذلك
تعتبر ملفات عادية.

· قم بتقديم لديه أكثر من ارتباط ثابت.

· قم بتقديم يحتوي على مجموعة بت setuid أو setgid أو مثبتة.

· تم ضبط وضع التشغيل على ضغط و ملف يحتوي بالفعل على لاحقة الهدف
تنسيق الملف (.xz or .txz عند الضغط على ملف .xz تنسيق و .lzma or .tlz متى
الضغط على ملف .lzma شكل).

· تم ضبط وضع التشغيل على فك الضغط و ملف لا يحتوي على أي لاحقة من أي من
تنسيقات الملفات المدعومة (.xz, .txz, .lzma، أو .tlz).

بعد ضغط أو فك ضغط ملف ملف, xz نسخ المالك ، المجموعة ،
الأذونات ووقت الوصول ووقت التعديل من المصدر ملف إلى الملف الهدف.
إذا فشل نسخ المجموعة ، يتم تعديل الأذونات بحيث لا يتم تعديل الملف الهدف
أصبح في متناول المستخدمين الذين ليس لديهم إذن للوصول إلى المصدر ملف. xz
لا يدعم نسخ البيانات الوصفية الأخرى مثل قوائم التحكم في الوصول أو السمات الموسعة
حتى الان.

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

إرسال SIGINFO or سيجسر 1 الى xz تجعل العملية تطبع معلومات التقدم إلى
خطأ تقليدي. هذا له استخدام محدود فقط منذ أن كان الخطأ القياسي عبارة عن محطة طرفية ، باستخدام
- الإسراف سيعرض مؤشر تقدم يتم التحديث تلقائيًا.

مكبر الصوت : يدعم، مع دعم ميكروفون مدمج لمنع الضوضاء استعمال
استخدام ذاكرة xz يختلف من بضع مئات كيلو بايت إلى عدة جيجابايت حسب
في إعدادات الضغط. تحدد الإعدادات المستخدمة عند ضغط ملف ملف
متطلبات الذاكرة من برنامج فك الضغط. عادةً ما يحتاج مزيل الضغط إلى 5٪ إلى 20٪ من
مقدار الذاكرة التي يحتاجها الضاغط عند إنشاء الملف. على سبيل المثال،
فك ضغط ملف تم إنشاؤه بامتداد xz -9 تتطلب حاليًا 65 ميغا بايت من الذاكرة. لا يزال ، هو
ممكن ان يكون .xz الملفات التي تتطلب عدة غيغابايت من الذاكرة لفك ضغطها.

قد يجد مستخدمو الأنظمة القديمة على وجه الخصوص إمكانية استخدام ذاكرة كبيرة جدًا
مزعج. لمنع المفاجآت غير المريحة ، xz لديه محدد استخدام ذاكرة مدمج ،
الذي يتم تعطيله افتراضيًا. بينما توفر بعض أنظمة التشغيل طرقًا للحد من ملفات
استخدام الذاكرة للعمليات ، والاعتماد عليها لم يكن مرنًا بدرجة كافية (على سبيل المثال ، استخدام
ulimit(1) يميل الحد من الذاكرة الظاهرية إلى الشلل mmap(2)).

يمكن تمكين محدد استخدام الذاكرة باستخدام خيار سطر الأوامر - الحد =قصر.
غالبًا ما يكون تمكين المحدد افتراضيًا أكثر ملاءمة عن طريق ضبط البيئة
متغير XZ_DEFAULTS، على سبيل المثال XZ_DEFAULTS = - ذاكرة = 150 ميغا بايت. من الممكن ضبط ملف
حدود منفصلة للضغط وفك الضغط باستخدام - ضغط محدود =قصر و
- الحد - فك الضغط =قصر. استخدام هذين الخيارين في الخارج XZ_DEFAULTS نادرًا ما يكون مفيدًا
لأن شوط واحد من xz لا يمكن القيام بكل من الضغط وإلغاء الضغط و
- الحد =قصر (أو -M قصر) أقصر للكتابة في سطر الأوامر.

إذا تم تجاوز حد استخدام الذاكرة المحدد عند فك الضغط ، xz سيعرض
خطأ وإلغاء ضغط الملف سيفشل. إذا تم تجاوز الحد عند الضغط ، xz
سيحاول تصغير الإعدادات بحيث لا يتم تجاوز الحد (إلا عندما
استخدام - تنسيق = خام or - لا ضبط). بهذه الطريقة لن تفشل العملية ما لم يكن الحد الأقصى
صغير جدا. يتم قياس الإعدادات في خطوات لا تتطابق مع الضغط
الإعدادات المسبقة للمستوى ، على سبيل المثال إذا كان الحد أقل بقليل من المبلغ المطلوب xz -9,
سيتم تصغير الإعدادات قليلاً فقط ، وليس على طول الطريق إلى xz -8.

سلسلة و حشوة مع .xz ملفات
من الممكن أن تتسلسل .xz الملفات كما هي. xz سيفك ضغط هذه الملفات كما لو كانت
كانت واحدة .xz ملف.

من الممكن إدخال حشوة بين الأجزاء المتسلسلة أو بعد الجزء الأخير.
يجب أن تتكون المساحة المتروكة من بايتات فارغة ويجب أن يكون حجم الحشو من مضاعفات
أربعة بايت. يمكن أن يكون هذا مفيدًا ، على سبيل المثال إذا كان .xz يتم تخزين الملف على وسيط يقيس
أحجام الملفات في كتل 512 بايت.

لا يُسمح بالتسلسل والحشو مع .lzma الملفات أو التدفقات الأولية.

OPTIONS


عدد صحيح لواحق و خاص القيم
في معظم الأماكن التي يُتوقع فيها وسيطة عدد صحيح ، يتم دعم لاحقة اختيارية
تشير بسهولة إلى أعداد صحيحة كبيرة. يجب ألا تكون هناك مسافة بين العدد الصحيح و
لاحقة.

كيلوبايت اضرب العدد الصحيح في 1,024،2 (10 ^ XNUMX). Ki, k, kB, Kو KB يتم قبولها على أنها
مرادفات ل كيلوبايت.

ميب اضرب العدد الصحيح في 1,048,576،2 (20 ^ XNUMX). Mi, m, Mو MB يتم قبولها على أنها
مرادفات ل ميب.

بنك الخليج الدولي اضرب العدد الصحيح في 1,073,741,824،2 (30 ^ XNUMX). Gi, g, Gو GB يتم قبولها على أنها
مرادفات ل بنك الخليج الدولي.

القيمة الخاصة ماكس يمكن استخدامها للإشارة إلى الحد الأقصى لقيمة العدد الصحيح التي يدعمها
الخيار.

عملية طريقة
إذا تم توفير خيارات متعددة لوضع التشغيل ، فسيتم تفعيل الخيار الأخير.

-z, --ضغط
ضغط. هذا هو وضع التشغيل الافتراضي عندما لا يكون هناك خيار وضع التشغيل
محدد ولم يتم تضمين أي وضع تشغيل آخر من اسم الأمر (لـ
مثال، unxz يدل - فك الضغط).

-d, - فك الضغط, - غير مضغوط
فك الضغط.

-t, --اختبار
اختبار سلامة المضغوطة ملفات. هذا الخيار يعادل - فك الضغط
- stdout فيما عدا أنه يتم تجاهل البيانات التي تم فك ضغطها بدلاً من الكتابة إليها
الإخراج القياسي. لم يتم إنشاء ملفات أو إزالتها.

-l, --قائمة
اطبع معلومات حول ملفات ملفات. لا يتم إنتاج أي إخراج غير مضغوط ، و
لا يتم إنشاء ملفات أو إزالتها. في وضع القائمة ، لا يمكن للبرنامج قراءة ملف
البيانات المضغوطة من الإدخال القياسي أو من مصادر أخرى غير قابلة للبحث.

تعرض القائمة الافتراضية المعلومات الأساسية حول ملفات، ملف واحد في كل سطر. للحصول على
معلومات أكثر تفصيلاً ، استخدم أيضًا ملف - الإسراف اختيار. للمزيد
المعلومات والاستخدام - الإسراف مرتين ، لكن لاحظ أن هذا قد يكون بطيئًا ، لأن الحصول على
كل المعلومات الإضافية تتطلب الكثير من البحث. عرض الإخراج المطول يتجاوز
80 حرفًا ، لذا قم بتوصيل الإخراج إلى على سبيل المثال أقل -S قد يكون مناسبًا إذا كان
المحطة ليست واسعة بما فيه الكفاية.

قد يختلف الإخراج الدقيق بين xz إصدارات ولغات مختلفة. للآلة-
الإخراج المقروء ، --إنسان آلي --قائمة يجب أن تستخدم.

عملية الصفات التعريفية
-k, --احتفظ
لا تحذف ملفات الإدخال.

-f, --فرض
هذا الخيار له عدة تأثيرات:

· إذا كان الملف الهدف موجودًا بالفعل ، فاحذفه قبل ضغطه أو
فك الضغط.

· الضغط أو فك الضغط حتى لو كان الإدخال رابطًا رمزيًا لملف عادي ،
لديه أكثر من ارتباط صلب ، أو لديه مجموعة setuid ، أو setgid ، أو مجموعة البت الثابتة. ال
لا يتم نسخ وحدات البت setuid و setgid و sticky إلى الملف الهدف.

· عند استخدامها مع - فك الضغط - stdout و xz لا يمكن التعرف على نوع
الملف المصدر ، انسخ الملف المصدر كما هو للإخراج القياسي. هذا يسمح xzcat
--فرض لاستخدامها مثل قط(1) للملفات التي لم يتم ضغطها xz.
لاحظ أنه في المستقبل ، xz قد تدعم تنسيقات الملفات المضغوطة الجديدة ، والتي قد
جعل xz فك ضغط المزيد من أنواع الملفات بدلاً من نسخها كما هو معتاد
الناتج. - تنسيق =شكل يمكن استخدامها لتقييد xz لفك ضغط واحد فقط
تنسيق الملف.

-c, - stdout, - إلى stdout
اكتب البيانات المضغوطة أو غير المضغوطة إلى الإخراج القياسي بدلاً من الملف.
هذا يعني --احتفظ.

- تيار واحد
فك الضغط فقط الأول .xz تيار ، وتجاهل الإدخال المحتمل المتبقي بصمت
البيانات التالية للدفق. عادة مثل هذه القمامة الزائدة يجعل xz عرض
خطأ.

xz لا تقم بفك ضغط أكثر من دفق واحد من .lzma الملفات أو التدفقات الأولية ، ولكن
هذا الخيار لا يزال يجعل xz تجاهل البيانات اللاحقة المحتملة بعد .lzma ملف
أو تيار خام.

لا يكون لهذا الخيار أي تأثير إذا لم يكن وضع التشغيل كذلك - فك الضغط or --اختبار.

--لا متناثر
تعطيل إنشاء الملفات المتفرقة. بشكل افتراضي ، إذا تم فك الضغط إلى ملف عادي
ملف، xz يحاول جعل الملف متفرقًا إذا كانت البيانات التي تم فك ضغطها تحتوي على بيانات طويلة
تسلسل الأصفار الثنائية. يعمل أيضًا عند الكتابة إلى الإخراج القياسي طالما
حيث يتم توصيل الإخراج القياسي بملف عادي وشروط إضافية معينة
لجعلها آمنة. قد يؤدي إنشاء ملفات متفرقة إلى توفير مساحة القرص وزيادة السرعة
فك الضغط عن طريق تقليل كمية القرص I / O.

-S .suf, - غلاف =.suf
عند الضغط ، استخدم .suf كلاحقة للملف الهدف بدلاً من .xz or
.lzma. إذا لم يتم الكتابة إلى الإخراج القياسي وكان الملف المصدر يحتوي بالفعل على الامتداد
لاحقة .suf، يتم عرض تحذير ويتم تخطي الملف.

عند فك الضغط ، تعرف على الملفات ذات اللاحقة .suf بالإضافة إلى الملفات ذات الامتداد
ال .xz, .txz, .lzma، أو .tlz لاحقة. إذا كان الملف المصدر يحتوي على اللاحقة .sufأطلقت حملة
تتم إزالة اللاحقة للحصول على اسم الملف الهدف.

عند ضغط أو فك ضغط التيارات الخام (- تنسيق = خام) ، يجب أن تكون اللاحقة
يتم تحديده دائمًا ما لم يتم الكتابة إلى الإخراج القياسي ، لأنه لا يوجد افتراضي
لاحقة لتيارات الخام.

- ملفات[=ملف]
اقرأ أسماء الملفات المراد المعالجة منها ملف؛ إذا ملف تم حذفه ، تتم قراءة أسماء الملفات
من المدخلات القياسية. يجب إنهاء أسماء الملفات بحرف السطر الجديد. أ
اندفاع (-) مأخوذ كاسم ملف عادي ؛ هذا لا يعني المدخلات القياسية. لو
يتم إعطاء أسماء الملفات أيضًا كوسائط سطر أوامر ، وتتم معالجتها قبل امتداد
أسماء الملفات المقروءة من ملف.

- الملفات 0[=ملف]
هذا مطابق لـ - ملفات[=ملف] فيما عدا أنه يجب إنهاء كل اسم ملف
بالحرف الفارغ.

أساسية ملف شكل و ضغط الخيارات
-F شكل, - تنسيق =شكل
حدد الملف شكل للضغط أو فك الضغط:

السيارات هذا هو الافتراضي. عند الضغط ، السيارات ما يعادل xz. عندما
فك الضغط ، يتم الكشف عن تنسيق ملف الإدخال تلقائيًا. ملحوظة
تلك التيارات الأولية (التي تم إنشاؤها باستخدام - تنسيق = خام) لا يمكن الكشف عنها تلقائيًا.

xz اضغط على ملف .xz تنسيق الملف أو القبول فقط .xz الملفات عندما
فك الضغط.

LZMA, وحده
ضغط على الإرث .lzma تنسيق الملف أو القبول فقط .lzma الملفات عندما
فك الضغط. الاسم البديل وحده يتم توفيرها للخلف
التوافق مع LZMA Utils.

الخام ضغط أو فك ضغط تيار خام (بدون رؤوس). هذا هو المقصود ل
المستخدمين المتقدمين فقط. لفك تدفقات الخام ، تحتاج إلى استخدام - تنسيق = خام و
تحديد سلسلة المرشح صراحةً ، والتي عادةً ما يتم تخزينها
في رؤوس الحاوية.

-C الاختيار, - تحقق =الاختيار
حدد نوع فحص التكامل. يتم احتساب الشيك من
البيانات غير المضغوطة والمخزنة في ملف .xz ملف. هذا الخيار له تأثير فقط عندما
ضغط في .xz صيغة؛ ال .lzma التنسيق لا يدعم فحوصات النزاهة.
يتم التحقق من فحص السلامة (إن وجد) عندما يتم .xz يتم فك ضغط الملف.

مدعومة الاختيار أنواع:

لا شيء لا تحسب فحص السلامة على الإطلاق. هذه عادة فكرة سيئة
يمكن أن يكون هذا مفيدًا عندما يتم التحقق من سلامة البيانات بوسائل أخرى
على أي حال.

crc32 احسب CRC32 باستخدام كثير الحدود من IEEE-802.3 (إيثرنت).

crc64 احسب CRC64 باستخدام كثير الحدود من ECMA-182. هذا هو الافتراضي ،
نظرًا لأنه أفضل قليلاً من CRC32 في اكتشاف الملفات التالفة وملفات
فرق السرعة لا يكاد يذكر.

sha256 احسب SHA-256. هذا أبطأ إلى حد ما من CRC32 و CRC64.

سلامة .xz يتم التحقق من الرؤوس دائمًا باستخدام CRC32. ليس من الممكن أن
تغييره أو تعطيله.

-0 -9
حدد مستوى ضغط مضبوط مسبقًا. الافتراضي هو -6. إذا كانت مستويات متعددة محددة مسبقا
محددة ، يتم تفعيل الأخير. إذا كانت سلسلة تصفية مخصصة بالفعل
المحدد ، يؤدي تعيين مستوى مضبوط مسبقًا للضغط إلى مسح سلسلة المرشح المخصصة.

الاختلافات بين الإعدادات المسبقة أكثر أهمية من مع GZIP(1) و
bzip2(1). تحدد إعدادات الضغط المحددة متطلبات الذاكرة لـ
برنامج إلغاء الضغط ، وبالتالي فإن استخدام مستوى عالٍ جدًا من الضبط المسبق قد يجعله مؤلمًا
فك ضغط الملف على نظام قديم به ذاكرة وصول عشوائي صغيرة. خاصة، انها ليس a
خير فكرة إلى عمياء استعمال -9 لل كل شىء كما هو الحال في كثير من الأحيان مع GZIP(1) و
bzip2(1).

-0 -3
هذه إعدادات مسبقة سريعة إلى حد ما. -0 في بعض الأحيان أسرع من GZIP -9 في حين
ضغط أفضل بكثير. غالبًا ما يكون للأعلى منها سرعة مماثلة لـ
bzip2(1) مع نسبة ضغط مماثلة أو أفضل ، على الرغم من النتائج
تعتمد كثيرًا على نوع البيانات التي يتم ضغطها.

-4 -6
ضغط جيد إلى جيد جدًا مع الحفاظ على استخدام ذاكرة فك الضغط
معقول حتى بالنسبة للأنظمة القديمة. -6 هو الافتراضي ، وهو عادة ما يكون جيدًا
اختيار ، على سبيل المثال لتوزيع الملفات التي تحتاج إلى فك الضغط حتى في
أنظمة بذاكرة وصول عشوائي (RAM) بسعة 16 ميجا بايت فقط. (-5e or -6e قد يكون من المفيد النظر أيضا.
يرى --شديد.)

-7 -9
هؤلاء مثل -6 ولكن مع ذاكرة ضاغط وضغط أعلى
المتطلبات. هذه مفيدة فقط عند ضغط ملفات أكبر من
8 ميجابايت و 16 ميجابايت و 32 ميجابايت على التوالي.

على نفس الجهاز ، تكون سرعة فك الضغط تقريبًا عددًا ثابتًا من
بايت من البيانات المضغوطة في الثانية. بمعنى آخر ، كلما كان الضغط أفضل ،
عادة ما يكون تخفيف الضغط أسرع. هذا يعني أيضًا أن مقدار
يمكن أن يختلف الإنتاج غير المضغوط الناتج في الثانية كثيرًا.

يلخص الجدول التالي ميزات الإعدادات المسبقة:

مسبقا DictSize CompCPU CompMem DecMem
-0 KiB 256 0 MiB 3 MiB
-1 1 ميجابايت 1 9 ميجابايت 2 ميجابايت
-2 2 ميجابايت 2 17 ميجابايت 3 ميجابايت
-3 4 ميجابايت 3 32 ميجابايت 5 ميجابايت
-4 4 ميجابايت 4 48 ميجابايت 5 ميجابايت
-5 8 ميجابايت 5 94 ميجابايت 9 ميجابايت
-6 8 ميجابايت 6 94 ميجابايت 9 ميجابايت
-7 16 ميجابايت 6 186 ميجابايت 17 ميجابايت
-8 32 ميجابايت 6 370 ميجابايت 33 ميجابايت
-9 64 ميجابايت 6 674 ميجابايت 65 ميجابايت

أوصاف العمود:

DictSize هو حجم القاموس LZMA2. إن استخدام ملف
قاموس أكبر من حجم الملف غير المضغوط. هذا هو سبب ذلك
جيد لتجنب استخدام الإعدادات المسبقة -7 -9 عندما لا تكون هناك حاجة حقيقية لهم.
At -6 وأقل من ذلك ، عادةً ما يكون مقدار الذاكرة المهدرة منخفضًا بما يكفي لعدم القيام بذلك
شيء.

· CompCPU هو تمثيل مبسط لإعدادات LZMA2 التي تؤثر
سرعة الضغط. يؤثر حجم القاموس على السرعة أيضًا ، لذلك بينما يكون CompCPU كذلك
نفس الشيء بالنسبة للمستويات -6 -9، لا تزال المستويات الأعلى تميل إلى أن تكون أبطأ قليلاً.
للحصول على ضغط أبطأ وبالتالي ربما أفضل ، راجع --شديد.

يحتوي CompMem على متطلبات ذاكرة الضاغط في وضع الخيوط المفردة.
قد تختلف قليلا بين xz الإصدارات. متطلبات الذاكرة لبعض
قد تكون الأوضاع متعددة مؤشرات الترابط المستقبلية أعلى بشكل كبير من تلك الخاصة بـ-
الوضع الخيوط.

· DecMem يحتوي على متطلبات ذاكرة برنامج فك الضغط. هذا هو الضغط
تحدد الإعدادات متطلبات الذاكرة الخاصة ببرنامج إلغاء الضغط. بالضبط
استخدام ذاكرة برنامج إلغاء الضغط أكبر بكثير من حجم قاموس LZMA2 ، ولكن
تم تقريب القيم الموجودة في الجدول إلى MiB الكامل التالي.

-e, --شديد
استخدم متغيرًا أبطأ لمستوى الضغط المحدد مسبقًا (-0 -9) إلى
نأمل الحصول على نسبة ضغط أفضل قليلاً ، ولكن مع سوء الحظ ، يمكن أن يحدث ذلك
كما يزيد الأمر سوءًا. لا يتأثر استخدام ذاكرة برنامج إلغاء الضغط ، ولكن الضاغط
يزيد استخدام الذاكرة قليلاً عند المستويات المحددة مسبقًا -0 -3.

نظرًا لوجود إعدادين مسبقًا بأحجام القاموس 4 MiB و 8 MiB ، فإن الإعدادات المسبقة -3e
و -5e استخدام إعدادات أسرع قليلاً (أقل CompCPU) من -4e و -6e,
على التوالى. بهذه الطريقة لا يوجد إعدادان مسبقًا متطابقان.

مسبقا DictSize CompCPU CompMem DecMem
-0e 256 KiB 8 4 MiB 1 MiB
-1e 1 MiB 8 13 MiB 2 MiB
-2e 2 MiB 8 25 MiB 3 MiB
-3e 4 MiB 7 48 MiB 5 MiB
-4e 4 MiB 8 48 MiB 5 MiB
-5e 8 MiB 7 94 MiB 9 MiB
-6e 8 MiB 8 94 MiB 9 MiB
-7e 16 MiB 8 186 MiB 17 MiB
-8e 32 MiB 8 370 MiB 33 MiB
-9e 64 MiB 8 674 MiB 65 MiB

على سبيل المثال ، هناك ما مجموعه أربعة إعدادات مسبقة تستخدم قاموس 8 MiB ، والتي
الطلب من الأسرع إلى الأبطأ هو -5, -6, -5eو -6e.

--بسرعة
--أفضل هذه أسماء مستعارة مضللة إلى حد ما لـ -0 و -9، على التوالى. وهذه هي
المقدمة فقط للتوافق مع الإصدارات السابقة مع LZMA Utils. تجنب استخدام هذه
خيارات.

- حجم الكتلة =المقاسات
عند الضغط على ملف .xz تنسيق ، قم بتقسيم بيانات الإدخال إلى كتل من المقاسات بايت.
يتم ضغط الكتل بشكل مستقل عن بعضها البعض.

- ضغط محدود =قصر
تعيين حد لاستخدام الذاكرة للضغط. إذا تم تحديد هذا الخيار متعدد
مرات ، وآخرها ساري المفعول.

إذا تجاوزت إعدادات الضغط الامتداد قصر, xz سوف يضبط الإعدادات لأسفل
بحيث لا يتم تجاوز الحد وعرض إشعار ذلك تلقائيًا
تم التعديل. لا يتم إجراء مثل هذه التعديلات عند الضغط باستخدام
- تنسيق = خام أو إذا - لا ضبط تم تحديده. في هذه الحالات ، يكون الخطأ
عرض و xz سيخرج مع حالة الخروج 1.

يوفر قصر يمكن تحديدها بعدة طرق:

· ال قصر يمكن أن تكون قيمة مطلقة بالبايت. استخدام لاحقة عدد صحيح مثل ميب
يمكن أن تكون مفيدة. مثال: - ضغط محدود = 80 ميغا بايت

· ال قصر يمكن تحديدها كنسبة مئوية من إجمالي الذاكرة الفعلية (RAM). هذه
يمكن أن يكون مفيدًا خاصةً عند تعيين ملف XZ_DEFAULTS متغير البيئة في
برنامج نصي لتهيئة shell يتم مشاركته بين أجهزة كمبيوتر مختلفة. الذي - التي
الطريقة التي يكون بها الحد أكبر تلقائيًا على الأنظمة ذات الذاكرة الأكبر. مثال:
- ضغط محدود = 70٪

· ال قصر يمكن إعادة تعيينه إلى قيمته الافتراضية عن طريق تعيينه على 0. وهذا هو
حاليا ما يعادل ضبط قصر إلى ماكس (لا يوجد حد لاستخدام الذاكرة). مرة واحدة
تم تنفيذ دعم خيوط المعالجة المتعددة ، قد يكون هناك فرق بين 0
و ماكس للحالة متعددة الخيوط ، لذلك يوصى باستخدامها 0 بدلا من ماكس
حتى يتم تحديد التفاصيل.

انظر أيضا القسم مكبر الصوت : يدعم، مع دعم ميكروفون مدمج لمنع الضوضاء استعمال.

- الحد - فك الضغط =قصر
قم بتعيين حد استخدام الذاكرة لإلغاء الضغط. يؤثر هذا أيضًا على --قائمة الوضع. لو
العملية غير ممكنة دون تجاوز قصر, xz سيعرض خطأ
وسيفشل فك ضغط الملف. ارى - ضغط محدود =قصر ممكن
طرق تحديد قصر.

-M قصر, - الحد =قصر, - الذاكرة =قصر
هذا يعادل التحديد - ضغط محدود =قصر
- الحد - فك الضغط =قصر.

- لا ضبط
عرض خطأ والخروج إذا تجاوزت إعدادات الضغط استخدام الذاكرة
حد. الافتراضي هو ضبط الإعدادات لأسفل بحيث استخدام الذاكرة
لا يتم تجاوز الحد. يتم دائمًا تعطيل الضبط التلقائي عند إنشاء خام
تيارات (- تنسيق = خام).

-T المواضيع, - الخيوط =المواضيع
حدد عدد مؤشرات الترابط العاملة المراد استخدامها. يمكن أن يكون العدد الفعلي للخيوط
أقل من المواضيع إذا كان استخدام المزيد من الخيوط سيتجاوز حد استخدام الذاكرة.

مؤشرات ضغط و إزالة الضغط . ليس نفذت بعد، so خيار
لديها لا تأثير لل الآن.

As of جاري الكتابة (2010-09-27)، it لا كان قررت if المواضيع سوف be مستعمل by
الافتراضي on متعددة النوى نظم مرة الدعم لل خيوط لديها كان نفذت.
التعليقات . أهلا بك. العامل المعقد هو أن استخدام العديد من الخيوط سيفعل ذلك
زيادة استخدام الذاكرة بشكل كبير. لاحظ أنه إذا كان multithreading سيكون
افتراضيًا ، من المحتمل أن يتم ذلك بحيث يتم ذلك في أوضاع خيوط المعالجة الواحدة ومتعددة مؤشرات الترابط
تنتج نفس الإخراج ، لذلك لن تتأثر نسبة الضغط بشكل كبير إذا
سيتم تمكين الترابط افتراضيًا.

عرف ضاغط تصفية السلاسل
تسمح سلسلة المرشح المخصصة بتحديد إعدادات الضغط بالتفصيل بدلاً من
بالاعتماد على الإعدادات المرتبطة بالمستويات المحددة مسبقًا. عندما تكون سلسلة التصفية المخصصة
المحدد ، خيارات مستوى الضغط المعينة مسبقًا (-0 -9 و --شديد) بصمت
تجاهلها.

سلسلة المرشح يمكن مقارنتها بالأنابيب الموجودة في سطر الأوامر. عند الضغط ، فإن ملف
ينتقل المدخلات غير المضغوطة إلى المرشح الأول ، الذي ينتقل مخرجاته إلى المرشح التالي (if
أي). تتم كتابة إخراج المرشح الأخير إلى الملف المضغوط. الحد الأقصى
عدد المرشحات في السلسلة هو أربعة ، ولكن عادةً ما تحتوي سلسلة المرشح على واحد أو اثنين فقط
المرشحات.

توجد قيود على العديد من المرشحات حيث يمكن أن تكون في سلسلة المرشح: يمكن لبعض المرشحات ذلك
تعمل فقط كمرشح أخير في السلسلة ، وبعضها يعمل فقط كمرشح غير أخير ، ويعمل البعض الآخر
في أي موضع في السلسلة. اعتمادًا على المرشح ، يكون هذا القيد إما متأصلًا
لتصميم المرشح أو موجود لمنع حدوث مشكلات أمنية.

يتم تحديد سلسلة التصفية المخصصة باستخدام خيار واحد أو أكثر من خيارات التصفية بالترتيب
مطلوبون في سلسلة التصفية. وهذا يعني أن ترتيب خيارات التصفية مهم!
عند فك تيارات الخام (- تنسيق = خام) ، يتم تحديد سلسلة المرشح بنفس الترتيب
كما تم تحديده عند الضغط.

تأخذ المرشحات فلترًا محددًا الخيارات كقائمة مفصولة بفواصل. فواصل إضافية في الخيارات
يتم تجاهلها. يحتوي كل خيار على قيمة افتراضية ، لذلك تحتاج إلى تحديد الخيارات التي تريدها فقط
للتغيير.

--lzma1[=الخيارات]
--lzma2[=الخيارات]
أضف مرشح LZMA1 أو LZMA2 إلى سلسلة المرشح. يمكن استخدام هذه المرشحات فقط كـ
المرشح الأخير في السلسلة.

LZMA1 هو مرشح قديم ، وهو مدعوم تقريبًا بسبب الإرث .lzma
تنسيق الملف ، الذي يدعم فقط LZMA1. LZMA2 هو إصدار محدث من LZMA1 إلى
إصلاح بعض المشكلات العملية المتعلقة بـ LZMA1. ال .xz يستخدم تنسيق LZMA2 ولا يدعم
LZMA1 على الإطلاق. سرعة الضغط ونسب LZMA1 و LZMA2 عمليًا هي
نفس.

يشترك LZMA1 و LZMA2 في نفس المجموعة من الخيارات:

ضبط مسبق =مسبقا
أعد تعيين كل LZMA1 أو LZMA2 الخيارات إلى مسبقا. مسبقا تتكون من عدد صحيح ،
والتي قد تتبعها معدّلات معدة مسبقًا من حرف واحد. يمكن أن يكون العدد الصحيح
تبدأ من 0 إلى 9، مطابقة خيارات سطر الأوامر -0 -9. الوحيد
المعدل المدعوم حاليا eالذي يطابق --شديد. الافتراضي
مسبقا is 6، والتي منها القيم الافتراضية لبقية LZMA1 أو
LZMA2 الخيارات مأخوذة.

ديكت =المقاسات
القاموس (المخزن المؤقت للتاريخ) المقاسات يشير إلى عدد بايت من ملف
يتم حفظ البيانات غير المضغوطة المعالجة في الذاكرة. الخوارزمية تحاول أن تجد
تكرار تسلسلات البايت (المطابقات) في البيانات غير المضغوطة ، واستبدالها
لهم مع مراجع للبيانات الموجودة حاليا في القاموس. الأكبر
القاموس ، كلما زادت فرصة العثور على تطابق. وهكذا يتزايد
قاموس المقاسات عادة ما يحسن نسبة الضغط ، ولكن القاموس أكبر
من أن الملف غير المضغوط هو إهدار للذاكرة.

القاموس النموذجي المقاسات من 64 KiB إلى 64 MiB. الحد الأدنى هو 4 كيلوبايت.
يبلغ الحد الأقصى للضغط حاليًا 1.5 جيجا بايت (1536 ميجا بايت). ال
برنامج إلغاء الضغط يدعم بالفعل قواميس يصل حجمها إلى بايت واحد أقل من 4 جيجا بايت ،
وهو الحد الأقصى لتنسيقات التدفق LZMA1 و LZMA2.

قاموس المقاسات ومكتشف المطابقة (mf) معًا تحديد استخدام الذاكرة لـ
جهاز التشفير LZMA1 أو LZMA2. نفس القاموس (أو أكبر) المقاسات is
مطلوب لفك الضغط الذي تم استخدامه عند الضغط ، وبالتالي الذاكرة
يتم تحديد استخدام وحدة فك التشفير من خلال حجم القاموس المستخدم عندما
ضغط. ال .xz رؤوس تخزين القاموس المقاسات إما 2 ^n أو 2 ^n
+ 2 ^ (n-1) ، لذلك هذه الأحجام إلى حد ما مفضلة للضغط. آخر
الأحجام سيتم تقريبه عند تخزينه في ملف .xz رؤوس.

lc =lc حدد عدد بتات السياق الحرفية. الحد الأدنى هو 0 و
الحد الأقصى هو 4 ؛ الافتراضي هو 3. بالإضافة إلى مجموع lc و lp ممنوع
تتجاوز 4.

يتم ترميز جميع البايتات التي لا يمكن ترميزها كمطابقات على أنها حرفية. الذي - التي
هو أن القيم الحرفية هي ببساطة 8 بتات مشفرة واحدة تلو الأخرى.

يفترض الترميز الحرفي أن الأعلى lc بت من
البايت غير المضغوط السابق يرتبط بالبايت التالي. على سبيل المثال بشكل نموذجي
نص باللغة الإنجليزية ، غالبًا ما يتبع الحرف الكبير حرف صغير ،
وعادة ما يتبع الحرف الصغير حرف آخر صغير.
في مجموعة أحرف US-ASCII ، أعلى ثلاث بتات هي 010 للأحرف الكبيرة
الأحرف و 011 للأحرف الصغيرة. متي lc 3 على الأقل ، الحرفي
يمكن أن يستفيد الترميز من هذه الخاصية في البيانات غير المضغوطة.

عادة ما تكون القيمة الافتراضية (3) جيدة. إذا كنت تريد أقصى ضغط ،
تجربه بالعربي م = 4. أحيانًا يساعد قليلاً ، وأحيانًا يقوم بالضغط
أسوأ. إذا زاد الأمر سوءًا ، فاختبر على سبيل المثال م = 2 أيضا.

ليرة لبنانية =lp حدد عدد بتات الموضع الحرفي. الحد الأدنى هو 0 و
الحد الأقصى هو 4 ؛ الافتراضي هو 0.

Lp يؤثر على نوع المحاذاة في البيانات غير المضغوطة التي يتم افتراضها عند
ترميز المعطيات. ارى pb أدناه لمزيد من المعلومات حول المحاذاة.

pb =pb حدد عدد بتات الموضع. الحد الأدنى هو 0 والحد الأقصى هو 4 ؛
الافتراضي هو 2.

Pb يؤثر على نوع المحاذاة المفترض في البيانات غير المضغوطة
جنرال لواء. يعني الإعداد الافتراضي محاذاة رباعية البايت (2 ^pb= 2 ^ 2 = 4) وهو غالبًا
اختيار جيد عندما لا يكون هناك تخمين أفضل.

عندما يعرف aligment ، الإعداد pb وفقًا لذلك قد يقلل حجم الملف
القليل. على سبيل المثال ، مع الملفات النصية ذات المحاذاة أحادية البايت (US-ASCII ،
ISO-8859- * ، UTF-8) ، الإعداد الرصاص = 0 يمكن أن يحسن الضغط قليلاً. ل
نص UTF-16 ، الرصاص = 1 هو اختيار جيد. إذا كانت المحاذاة هي رقم فردي مثل
3 بايت ، الرصاص = 0 قد يكون الخيار الأفضل.

على الرغم من إمكانية تعديل المحاذاة المفترضة باستخدام pb و lpو LZMA1 و
لا يزال LZMA2 يفضل قليلاً محاذاة 16 بايت. قد يكون من المفيد أخذها
حساب عند تصميم تنسيقات الملفات التي من المحتمل أن تكون مضغوطة في كثير من الأحيان
مع LZMA1 أو LZMA2.

مف =mf أداة البحث عن المطابقة لها تأثير كبير على سرعة برنامج التشفير واستخدام الذاكرة وملفات
نسبة الضغط. عادةً ما تكون مكتشفات تطابق Hash Chain أسرع من Binary
مكتشفات تطابق الشجرة. الافتراضي يعتمد على مسبقا: 0 استخدامات hc3، 1-3 استخدام
hc4، والباقي استخدام bt4.

يتم دعم مكتشفات المطابقة التالية. صيغ استخدام الذاكرة أدناه
هي تقديرات تقريبية ، وهي الأقرب إلى الواقع عندما ديكت هو
طاقة اثنين.

hc3 سلسلة تجزئة مع تجزئة 2 و 3 بايت
أدنى قيمة لـ رحلة جميلة: 3
استخدام الذاكرة:
ديكت * 7.5 (إذا ديكت <= 16 ميغا بايت) ؛
ديكت * 5.5 + 64 ميغا بايت (إذا ديكت > 16 ميغا بايت)

hc4 سلسلة تجزئة مع تجزئة 2 و 3 و 4 بايت
أدنى قيمة لـ رحلة جميلة: 4
استخدام الذاكرة:
ديكت * 7.5 (إذا ديكت <= 32 ميغا بايت) ؛
ديكت * 6.5 (إذا ديكت > 32 ميغا بايت)

bt2 شجرة ثنائية بتجزئة ثنائية البايت
أدنى قيمة لـ رحلة جميلة: 2
استخدام الذاكرة: ديكت * 9.5

bt3 شجرة ثنائية بتجزئة ثنائية و 2 بايت
أدنى قيمة لـ رحلة جميلة: 3
استخدام الذاكرة:
ديكت * 11.5 (إذا ديكت <= 16 ميغا بايت) ؛
ديكت * 9.5 + 64 ميغا بايت (إذا ديكت > 16 ميغا بايت)

bt4 Binary Tree مع تجزئة 2 و 3 و 4 بايت
أدنى قيمة لـ رحلة جميلة: 4
استخدام الذاكرة:
ديكت * 11.5 (إذا ديكت <= 32 ميغا بايت) ؛
ديكت * 10.5 (إذا ديكت > 32 ميغا بايت)

الوضع =طريقة
ضغط طريقة يحدد طريقة تحليل البيانات التي تنتجها
مكتشف المباراة. أيد وسائط . بسرعة و عادي. الافتراضي هو بسرعة لل
المسبقة 0-3 و عادي لل المسبقة 4-9.

عادة بسرعة يتم استخدامه مع مكتشفات تطابق Hash Chain و عادي مع ثنائي
مكتشفات تطابق الشجرة. هذا أيضا ما المسبقة القيام به.

لطيف =رحلة جميلة
حدد ما يعتبر طولًا مناسبًا للمباراة. مرة واحدة في المباراة
على الأقل رحلة جميلة تم العثور على بايت ، تتوقف الخوارزمية عن البحث عن احتمال
أفضل التطابقات.

لطيف يمكن أن يكون 2-273 بايت. تميل القيم الأعلى إلى إعطاء ضغط أفضل
النسبة على حساب السرعة. الافتراضي يعتمد على مسبقا.

العمق =عمق
حدد أقصى عمق بحث في أداة البحث عن المطابقة. الافتراضي هو
قيمة خاصة قدرها 0 ، مما يجعل الضاغط يحدد بشكل معقول عمق
تبدأ من mf و رحلة جميلة.

معقول عمق لسلاسل التجزئة هو 4-100 و16-1000 للأشجار الثنائية.
استخدام قيم عالية جدًا لـ عمق يمكن أن تجعل التشفير بطيئًا للغاية مع
بعض الملفات. تجنب ضبط عمق أكثر من 1000 إلا إذا كنت مستعدًا لذلك
مقاطعة الضغط في حالة استغراقه وقتًا طويلاً جدًا.

عند فك تيارات الخام (- تنسيق = خام) ، يحتاج LZMA2 فقط إلى القاموس المقاسات.
يحتاج LZMA1 أيضًا lc, lpو pb.

- x86[=الخيارات]
- powerpc[=الخيارات]
--ia64[=الخيارات]
--ذراع[=الخيارات]
- الإبهام[=الخيارات]
- سبارك[=الخيارات]
أضف مرشح فرع / مكالمة / قفزة (BCJ) إلى سلسلة التصفية. يمكن استخدام هذه المرشحات
فقط كمرشح غير أخير في سلسلة التصفية.

يقوم عامل تصفية BCJ بتحويل العناوين النسبية في كود الجهاز إلى مطلقة
نظرائه. هذا لا يغير حجم البيانات ، لكنه يزيد
التكرار ، والذي يمكن أن يساعد LZMA2 على إنتاج 0-15٪ أصغر .xz ملف. إن BCJ
تكون الفلاتر دائمًا قابلة للعكس ، لذا فإن استخدام عامل تصفية BCJ لنوع خاطئ من البيانات لا يفعل ذلك
يسبب أي فقدان للبيانات ، على الرغم من أنه قد يجعل نسبة الضغط أسوأ قليلاً.

من الجيد تطبيق عامل تصفية BCJ على ملف تنفيذي بالكامل؛ ليست هناك حاجة لتطبيقه
فقط في القسم القابل للتنفيذ. تطبيق عامل تصفية BCJ على أرشيف يحتوي على
كل من الملفات القابلة للتنفيذ وغير القابلة للتنفيذ قد تعطي أو لا تعطي نتائج جيدة ، لذلك
بشكل عام ليس من الجيد تطبيق مرشح BCJ بشكل أعمى عند ضغط الحزم الثنائية
للتوزيع.

فلاتر BCJ سريعة جدًا ولا تستخدم قدرًا كبيرًا من الذاكرة. إذا كان ملف BCJ
يعمل المرشح على تحسين نسبة ضغط الملف ، ويمكنه تحسين سرعة فك الضغط
نفس الوقت. هذا بسبب سرعة فك الضغط على نفس الجهاز
LZMA2 هو تقريبًا عدد ثابت من بايتات البيانات المضغوطة في الثانية.

لقد عرفت عوامل تصفية BCJ هذه المشكلات المتعلقة بنسبة الضغط:

· بعض أنواع الملفات التي تحتوي على تعليمات برمجية قابلة للتنفيذ (مثل ملفات الكائنات ، الثابتة
المكتبات ووحدات Linux kernel النمطية) لها العناوين في التعليمات
مليئة بقيم الحشو. ستظل عوامل تصفية BCJ هذه تقوم بالعنوان
مما يجعل الضغط أسوأ مع هذه الملفات.

يمكن تطبيق مرشح BCJ على أرشيف يحتوي على عدة ملفات قابلة للتنفيذ مماثلة
تجعل نسبة الضغط أسوأ من عدم استخدام عامل تصفية BCJ. هذا بسبب
لا يكتشف عامل التصفية BCJ حدود الملفات القابلة للتنفيذ ، و
لا يعيد تعيين عداد تحويل العنوان لكل ملف قابل للتنفيذ.

سيتم إصلاح كلتا المشكلتين المذكورتين أعلاه في المستقبل في مرشح جديد. القديم
ستظل عوامل تصفية BCJ مفيدة في الأنظمة المضمنة ، لأن وحدة فك ترميز ملفات
سيكون المرشح الجديد أكبر ويستخدم ذاكرة أكبر.

مجموعات التعليمات المختلفة لها محاذاة مختلفة:

ملاحظات محاذاة عامل التصفية
x86 1 32 بت أو 64 بت x86
PowerPC 4 Big Endian فقط
ARM 4 Little Endian فقط
ARM-Thumb 2 Little Endian فقط
IA-64 16 Endian كبير أو صغير
SPARC 4 إنديان كبير أو صغير

نظرًا لأن البيانات التي تمت تصفيتها بواسطة BCJ عادةً ما يتم ضغطها باستخدام LZMA2 ، فإن نسبة الضغط
قد يتم تحسينه بشكل طفيف إذا تم ضبط خيارات LZMA2 لتتناسب مع محاذاة
مرشح BCJ المحدد. على سبيل المثال ، مع مرشح IA-64 ، من الجيد ضبطه الرصاص = 4
مع LZMA2 (2 ^ 4 = 16). يعتبر عامل التصفية x86 استثناءً؛ عادة ما يكون من الجيد التمسك بها
محاذاة LZMA2 الافتراضية رباعية البايت عند ضغط الملفات التنفيذية x86.

تدعم كافة عوامل تصفية BCJ نفس الشيء الخيارات:

تبدأ =عوض
حدد البداية عوض يتم استخدامه عند التحويل بين نسبي و
عناوين مطلقة. ال عوض يجب أن يكون أحد مضاعفات محاذاة
مرشح (انظر الجدول أعلاه). الافتراضي هو صفر. في الممارسة العملية ،
التقصير أمر جيد تحديد العرف عوض يكاد يكون غير مفيد أبدًا.

--دلتا[=الخيارات]
أضف مرشح دلتا إلى سلسلة المرشح. لا يمكن استخدام مرشح دلتا إلا كملف
مرشح غير الأخير في سلسلة التصفية.

حاليًا ، يتم دعم حساب دلتا البسيط فقط. يمكن أن يكون مفيدا
عند ضغط مثل الصور النقطية غير المضغوطة أو صوت PCM غير مضغوط.
ومع ذلك ، قد تعطي خوارزميات الأغراض الخاصة نتائج أفضل بكثير من
دلتا + LZMA2. هذا صحيح بشكل خاص مع الصوت ، الذي يضغط بشكل أسرع و
على سبيل المثال أفضل مع فلك(1).

مدعومة الخيارات:

توزيعات =مسافة
تحديد مسافة لحساب دلتا بالبايت. مسافة يجب أن تكون
1-256. الافتراضي هو 1.

على سبيل المثال ، مع توزيعات = 2 وإدخال ثماني بايت A1 B1 A2 B3 A3 B5 A4 B7 ، فإن
سيكون الإخراج A1 B1 01 02 01 02 01 02.

أصناف أخرى الخيارات
-q, --هادئ
قم بإلغاء التحذيرات والإشعارات. حدد هذا مرتين لمنع الأخطاء أيضًا. هذه
الخيار ليس له تأثير على حالة الخروج. هذا هو ، حتى لو كان التحذير
تم منعه ، لا تزال حالة الخروج للإشارة إلى التحذير قيد الاستخدام.

-v, - الإسراف
كن مطولا. إذا كان الخطأ القياسي متصلاً بمحطة ، xz سوف يعرض
مؤشر التقدم. التحديد - الإسراف مرتين سوف تعطي إخراج مطول أكثر.

يوضح مؤشر التقدم المعلومات التالية:

· تظهر نسبة الإنجاز إذا كان حجم ملف الإدخال معروفًا. هذا هو،
لا يمكن أن تظهر النسبة في الأنابيب.

· كمية البيانات المضغوطة المنتجة (المضغوطة) أو المستهلكة (فك الضغط).

· كمية البيانات غير المضغوطة المستهلكة (المضغوطة) أو المنتجة (فك الضغط).

· نسبة الضغط والتي يتم حسابها بقسمة كمية البيانات المضغوطة
تمت معالجتها حتى الآن من خلال كمية البيانات غير المضغوطة التي تمت معالجتها حتى الآن.

· سرعة الضغط أو فك الضغط. يتم قياس هذا على أنه مقدار
البيانات غير المضغوطة المستهلكة (ضغط) أو المنتجة (فك الضغط) في الثانية.
يتم عرضه بعد مرور بضع ثوان منذ ذلك الحين xz بدأت في معالجة
ملف.

الوقت المنقضي بصيغة M: SS أو H: MM: SS.

يظهر الوقت المقدر المتبقي فقط عندما يكون حجم ملف الإدخال معروفًا
ومرت بالفعل ثانيتان منذ ذلك الحين xz بدأت في معالجة
ملف. يتم عرض الوقت بتنسيق أقل دقة لا يحتوي على أي نقطتين ،
على سبيل المثال 2 دقيقة و 30 ثانية.

عندما لا يكون الخطأ القياسي محطة ، - الإسراف سيجعل xz اطبع اسم الملف
الحجم المضغوط والحجم غير المضغوط ونسبة الضغط وربما السرعة أيضًا
والوقت المنقضي على سطر واحد إلى الخطأ القياسي بعد ضغط أو
فك ضغط الملف. يتم تضمين السرعة والوقت المنقضي فقط عندما يكون ملف
استغرقت العملية بضع ثوانٍ على الأقل. إذا لم تنته العملية ، على سبيل المثال بسبب
مقاطعة المستخدم ، كما تتم طباعة نسبة الإنجاز إذا كان حجم
ملف الإدخال معروف.

-Q, --لا تحذير
لا تقم بتعيين حالة الخروج على 2 حتى إذا تم اكتشاف حالة تستحق تحذيرًا.
لا يؤثر هذا الخيار على مستوى الإسهاب ، وبالتالي كلاهما --هادئ و --لا تحذير
يجب استخدامها لعدم عرض التحذيرات وعدم تغيير حالة الخروج.

--إنسان آلي
اطبع الرسائل بتنسيق قابل للتحليل الآلي. هذا يهدف إلى تسهيل الكتابة
الواجهات التي تريد استخدامها xz بدلاً من liblzma ، وهو ما قد يكون عليه الحال مع
نصوص مختلفة. من المفترض أن يكون الإخراج مع تمكين هذا الخيار مستقرًا عبر
xz إطلاق. انظر القسم إنسان آلي MODE للتفاصيل.

- ذاكرة المعلومات
عرض حجم الذاكرة الفعلية (RAM) بتنسيق يمكن قراءته بواسطة الإنسان xz يعتقد
يحتوي النظام وحدود استخدام الذاكرة للضغط وفك الضغط والخروج
بنجاح.

-h, --مساعدة
اعرض رسالة تعليمات تصف الخيارات الأكثر استخدامًا ، ثم قم بإنهاء
بنجاح.

-H, - مساعدة طويلة
اعرض رسالة تعليمات تصف جميع ميزات xz، والخروج بنجاح

-V, --الإصدار
اعرض رقم إصدار xz و liblzma بتنسيق يمكن قراءته بواسطة الإنسان. للحصول على
الناتج القابل للتحليل الآلي ، حدد --إنسان آلي قبل --الإصدار.

إنسان آلي MODE


يتم تنشيط وضع الروبوت مع --إنسان آلي اختيار. يجعل إخراج xz أسهل
تحليل بواسطة برامج أخرى. حاليا --إنسان آلي مدعوم فقط مع --الإصدار,
- ذاكرة المعلوماتو --قائمة. سيتم دعمه للضغط العادي وإلغاء الضغط
فى المستقبل.

الإصدار
xz --إنسان آلي --الإصدار سيطبع رقم إصدار xz وليبلزما في الآتي
شكل:

XZ_VERSION =XYYYZZZS
LIBLZMA_VERSION =XYYYZZZS

X الإصدار الرئيسي.

YYY نسخة ثانوية. الأرقام الزوجية مستقرة. الأرقام الفردية هي إصدارات ألفا أو بيتا.

ZZZ مستوى التصحيح للإصدارات المستقرة أو مجرد عداد لإصدارات التطوير.

S استقرار. 0 هو alpha ، و 1 هو بيتا ، و 2 ثابت. S يجب أن تكون دائمًا 2 عندما YYY
حتى.

XYYYZZZS هي نفسها في كلا السطرين إذا xz و liblzma من نفس إصدار XZ Utils.

أمثلة: 4.999.9 بيتا هي 49990091 و 5.0.0 هو 50000002.

مكبر الصوت : يدعم، مع دعم ميكروفون مدمج لمنع الضوضاء قصر معلومات
xz --إنسان آلي - ذاكرة المعلومات يطبع سطرًا واحدًا بثلاثة أعمدة مفصولة بعلامات جدولة:

1. إجمالي حجم الذاكرة الفعلية (RAM) بالبايت

2. حد استخدام الذاكرة للضغط بالبايت. تشير القيمة الخاصة للصفر إلى
الإعداد الافتراضي ، والذي بالنسبة للوضع الخيطي المفرد هو نفسه لا يوجد حد.

3. حد استخدام الذاكرة لفك الضغط بالبايت. تشير القيمة الخاصة للصفر إلى
الإعداد الافتراضي ، والذي بالنسبة للوضع الخيطي المفرد هو نفسه لا يوجد حد.

في المستقبل ، ناتج xz --إنسان آلي - ذاكرة المعلومات قد تحتوي على المزيد من الأعمدة ، ولكن ليس أبدًا
أكثر من سطر واحد.

قائمة طريقة
xz --إنسان آلي --قائمة يستخدم إخراج مفصولة بعلامات جدولة. العمود الأول من كل سطر يحتوي على سلسلة
التي تشير إلى نوع المعلومات الموجودة في هذا السطر:

الاسم هذا هو السطر الأول دائمًا عند البدء في سرد ​​ملف. العمود الثاني في
الخط هو اسم الملف.

ملف يحتوي هذا السطر على معلومات شاملة حول .xz ملف. هذا الخط هو دائما
طبع بعد الاسم الخط.

مجرى يتم استخدام نوع الخط هذا فقط عندما - الإسراف تم تحديده. هناك الكثير مجرى
خطوط حيث توجد تيارات في .xz ملف.

منع يتم استخدام نوع الخط هذا فقط عندما - الإسراف تم تحديده. هناك الكثير منع
خطوط حيث توجد كتل في .xz ملف. ال منع تظهر الخطوط بعد كل ملف
مجرى خطوط؛ لا يتم معشق أنواع الخطوط المختلفة.

ملخص
يتم استخدام نوع الخط هذا فقط عندما - الإسراف تم تحديده مرتين. هذا الخط
طبع بعد كل شيء منع خطوط. مثل ال ملف الخط ، ملخص يحتوي الخط
معلومات شاملة حول .xz ملف.

المجاميع هذا السطر هو دائمًا آخر سطر من إخراج القائمة. يظهر المجموع
التهم والأحجام.

أعمدة ملف خطوط:
2. عدد التدفقات في الملف
3. العدد الإجمالي للكتل في الدفق (التدفقات)
4. حجم الملف المضغوط
5. حجم الملف غير مضغوط
6. نسبة الضغط مثلا 0.123. إذا كانت النسبة أكبر من 9.999 ، ثلاث شرطات
(---) بدلاً من النسبة.
7. قائمة مفصولة بفواصل لأسماء التحقق من التكامل. يتم استخدام السلاسل التالية
لأنواع الشيكات المعروفة: لايوجد, CRC32, CRC64و SHA-256. لشيك غير معروف
أنواع، مجهول-N يستخدم ، أين N هو معرف التحقق كرقم عشري (واحد أو
رقمين).
8. الحجم الإجمالي لحشو الدفق في الملف

أعمدة مجرى خطوط:
2. رقم الدفق (التدفق الأول هو 1)
3. عدد الكتل في الدفق
4. إزاحة البداية المضغوطة
5. بدء الإزاحة غير المضغوطة
6. الحجم المضغوط (لا يشمل حشوة التدفق)
7. حجم غير مضغوط
8. نسبة الضغط
9. اسم التحقق من السلامة
10. حجم تيار الحشو

أعمدة منع خطوط:
2. رقم التدفق الذي يحتوي على هذه الكتلة
3. رقم الكتلة بالنسبة لبداية التدفق (الكتلة الأولى هي 1)
4. رقم الكتلة بالنسبة لبداية الملف
5. إزاحة البدء المضغوطة بالنسبة إلى بداية الملف
6. إزاحة البدء غير المضغوطة بالنسبة إلى بداية الملف
7. إجمالي الحجم المضغوط للكتلة (بما في ذلك الرؤوس)
8. حجم غير مضغوط
9. نسبة الضغط
10. اسم التحقق من السلامة

If - الإسراف تم تحديده مرتين ، تم تضمين أعمدة إضافية في منع خطوط.
لا يتم عرض هذه مع واحد - الإسراف، لأن الحصول على هذه المعلومات يتطلب
يسعى الكثير وبالتالي يمكن أن يكون بطيئًا:
11. قيمة التحقق من التكامل في النظام الست عشري
12. كتلة حجم الرأس
13. أعلام الحظر: c يشير إلى وجود حجم مضغوط ، و u يدل علي
حجم غير مضغوط موجود. إذا لم يتم تعيين العلم ، فستظهر شرطة (-) معروض
بدلا من ذلك للحفاظ على طول السلسلة ثابتة. قد يتم إضافة علامات جديدة في نهاية
السلسلة في المستقبل.
14. حجم البيانات المضغوطة الفعلية في الكتلة (باستثناء الكتلة
رأس ، كتلة الحشو ، وفحص الحقول)
15. مقدار الذاكرة (بالبايت) المطلوب لفك ضغط هذه الكتلة بهذا xz
الإصدار
16. سلسلة التصفية. لاحظ أن معظم الخيارات المستخدمة في وقت الضغط لا يمكن أن تكون
معروف ، لأنه يتم تخزين الخيارات المطلوبة فقط لإلغاء الضغط في
ال .xz رؤوس.

أعمدة ملخص خطوط:
2. مقدار الذاكرة (بالبايت) المطلوبة لفك ضغط هذا الملف بهذا xz
الإصدار
3. نعم فعلا or لا للإشارة إلى ما إذا كانت جميع رؤوس الكتل تحتوي على حجم مضغوط و
حجم غير مضغوط المخزنة فيها
منذ xz 5.1.2 ألفا:
4. الحد الأدنى xz الإصدار المطلوب لفك ضغط الملف

أعمدة المجاميع على الانترنت:
2. عدد التيارات
3. عدد الكتل
4. الحجم المضغوط
5. حجم غير مضغوط
6. متوسط ​​نسبة الضغط
7. قائمة مفصولة بفواصل لأسماء التحقق من التكامل التي كانت موجودة في الملفات
8. حجم تيار الحشو
9. عدد الملفات. هذا هنا للحفاظ على ترتيب الأعمدة السابقة
نفس الشيء في ملف خطوط.

If - الإسراف تم تحديده مرتين ، تم تضمين أعمدة إضافية في المجاميع على الانترنت:
10. الحد الأقصى لمقدار الذاكرة (بالبايت) المطلوب لفك ضغط الملفات باستخدام هذا
xz الإصدار
11. نعم فعلا or لا للإشارة إلى ما إذا كانت جميع رؤوس الكتل تحتوي على حجم مضغوط و
حجم غير مضغوط المخزنة فيها
منذ xz 5.1.2 ألفا:
12. الحد الأدنى xz الإصدار المطلوب لفك ضغط الملف

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

EXIT الوضع


0 كل شيئ بخير.

1 حدث خطأ.

2 حدث شيء يستحق التحذير ، ولكن لم تحدث أخطاء فعلية.

لا تؤثر الإشعارات (وليس التحذيرات أو الأخطاء) المطبوعة على الخطأ القياسي في حالة الخروج.

البيئة


xz يوزع قوائم خيارات مفصولة بمسافات من متغيرات البيئة XZ_DEFAULTS و
XZ_OPT، بهذا الترتيب ، قبل تحليل الخيارات من سطر الأوامر. لاحظ ذلك فقط
يتم تحليل الخيارات من متغيرات البيئة ؛ يتم تجاهل جميع الخيارات غير الاختيارية بصمت.
يتم الإعراب باستخدام getopt_long(3) والذي يستخدم أيضًا لوسائط سطر الأوامر.

XZ_DEFAULTS
خيارات افتراضية خاصة بالمستخدم أو على مستوى النظام. عادة يتم تعيين هذا في قذيفة
نص التهيئة لتمكين xzمحدد استخدام الذاكرة بشكل افتراضي. ازالة
البرامج النصية لتهيئة shell والحالات الخاصة المماثلة ، يجب عدم تعيين البرامج النصية أبدًا أو
غير مصلد XZ_DEFAULTS.

XZ_OPT هذا هو لتمرير الخيارات إلى xz عندما لا يكون من الممكن ضبط الخيارات
مباشرة على xz سطر الأوامر. هذا هو الحال على سبيل المثال عندما xz يتم تشغيله بواسطة برنامج نصي
أو أداة ، مثل جنو قطران(1):

XZ_OPT = -2v tar caf foo.tar.xz foo

قد تستخدم البرامج النصية XZ_OPT على سبيل المثال لتعيين خيارات الضغط الافتراضية الخاصة بالبرنامج النصي. هو - هي
لا يزال موصى به للسماح للمستخدمين بتجاوز XZ_OPT إذا كان ذلك معقولاً ، على سبيل المثال
in sh(1) نصوص برمجية يمكن للمرء أن يستخدم شيئًا كالتالي:

XZ_OPT = $ {XZ_OPT - "- 7e"}
تصدير XZ_OPT

LZMA فائدة التوافق


صيغة سطر الأوامر الخاصة بـ xz عمليا هو مجموعة شاملة من LZMA, unzmaو lzcat as
تم العثور عليها من LZMA Utils 4.32.x. في معظم الحالات ، من الممكن استبدال LZMA Utils بـ XZ
Utils دون كسر البرامج النصية الحالية. هناك بعض حالات عدم التوافق بالرغم من ذلك
قد يسبب مشاكل في بعض الأحيان.

ضغط مسبقا ومستوياتها
ترقيم الإعدادات المسبقة لمستوى الضغط غير متطابق في xz و LZMA Utils. ال
الاختلاف الأكثر أهمية هو كيفية تعيين أحجام القاموس إلى إعدادات مسبقة مختلفة.
حجم القاموس يساوي تقريبًا استخدام ذاكرة برنامج إلغاء الضغط.

المستوى xz LZMA Utils
-0 كيلو بايت لا ينطبق
-1 1 ميجابايت 64 كيلوبايت
-2 2 ميجابايت 1 ميجابايت
-3 4 ميجابايت 512 كيلوبايت
-4 4 ميجابايت 1 ميجابايت
-5 8 ميجابايت 2 ميجابايت
-6 8 ميجابايت 4 ميجابايت
-7 16 ميجابايت 8 ميجابايت
-8 32 ميجابايت 16 ميجابايت
-9 64 ميجابايت 32 ميجابايت

تؤثر الاختلافات في حجم القاموس على استخدام ذاكرة الضاغط أيضًا ، ولكن هناك بعض الاختلافات
الاختلافات الأخرى بين LZMA Utils و XZ Utils ، والتي تجعل الفرق أكبر:

المستوى xz LZMA Utils 4.32.x
-0 3 ميجابايت غير متوفر
-1 9 ميجابايت 2 ميجابايت
-2 17 ميجابايت 12 ميجابايت
-3 32 ميجابايت 12 ميجابايت
-4 48 ميجابايت 16 ميجابايت
-5 94 ميجابايت 26 ميجابايت
-6 94 ميجابايت 45 ميجابايت
-7 186 ميجابايت 83 ميجابايت
-8 370 ميجابايت 159 ميجابايت
-9 674 ميجابايت 311 ميجابايت

المستوى الافتراضي المحدد مسبقًا في LZMA Utils هو -7 بينما في XZ Utils هو كذلك -6، لذلك يستخدم كلاهما الرقم 8
قاموس MiB بشكل افتراضي.

تدفق مقابل غير متدفق .lzma ملفات
يمكن تخزين الحجم غير المضغوط للملف في ملف .lzma رأس. يقوم LZMA Utils بذلك
عند ضغط الملفات العادية. البديل هو تحديد الحجم غير المضغوط
غير معروف واستخدم علامة نهاية الحمولة للإشارة إلى المكان الذي يجب أن يتوقف فيه برنامج إلغاء الضغط.
تستخدم LZMA Utils هذه الطريقة عندما لا يكون الحجم غير المضغوط معروفًا ، وهذا هو الحال بالنسبة لـ
سبيل المثال في الأنابيب.

xz يدعم فك الضغط .lzma الملفات ذات علامة نهاية الحمولة أو بدونها ، ولكن جميعها .lzma
من الملفات التي تم إنشاؤها بواسطة xz ستستخدم علامة نهاية الحمولة ويكون لها حجم غير مضغوط مميز بعلامة
غير معروف في .lzma رأس. قد تكون هذه مشكلة في بعض المواقف غير المألوفة. ل
على سبيل المثال ، أ .lzma قد يعمل برنامج إلغاء الضغط في جهاز مضمن فقط مع الملفات التي تحتوي على
حجم غير مضغوط معروف. إذا واجهت هذه المشكلة ، فأنت بحاجة إلى استخدام LZMA Utils أو LZMA SDK
لخلق .lzma ملفات ذات حجم معروف غير مضغوط.

غير معتمد .lzma ملفات
يوفر .lzma يسمح الشكل lc قيم تصل إلى 8 و lp قيم تصل إلى 4. يمكن LZMA Utils
فك ضغط الملفات مع أي ملف lc و lp، ولكن دائمًا ما يُنشئ ملفات بامتداد م = 3 و ليرة لبنانية = 0.
إنشاء ملفات مع الآخرين lc و lp ممكن مع xz ومع LZMA SDK.

يتطلب تنفيذ مرشح LZMA1 في liblzma أن يكون مجموع lc و lp يجب
لا تتجاوز 4. وهكذا ، .lzma لا يمكن فك ضغط الملفات التي تتجاوز هذا الحد
مع xz.

ينشئ LZMA Utils فقط .lzma الملفات التي يبلغ حجم قاموسها 2 ^n (قوة 2) لكن
يقبل الملفات بأي حجم قاموس. تقبل liblzma فقط .lzma الملفات ذات الامتداد
حجم القاموس 2 ^n أو 2 ^n + 2 ^ (n-1). هذا هو لتقليل الإيجابيات الكاذبة عندما
كشف .lzma الملفات.

لا ينبغي أن تكون هذه القيود مشكلة في الممارسة ، حيث أنها كلها عمليا .lzma ملفات
تم ضغطها بالإعدادات التي سيقبلها liblzma.

زائدة قمامة
عند فك الضغط ، يتجاهل LZMA Utils كل شيء بصمت بعد الأول .lzma تيار.
في معظم الحالات ، يعد هذا خطأ. هذا يعني أيضًا أن LZMA Utils لا تدعم
فك الضغط المتسلسلة .lzma الملفات.

إذا كانت هناك بيانات متبقية بعد الأول .lzma مجرى، xz يعتبر الملف تالفًا
ما لم - تيار واحد كان مستعملا. قد يؤدي هذا إلى كسر النصوص الغامضة التي افترضت ذلك
يتم تجاهل القمامة الزائدة.

الملاحظات


مضغوط الناتج قد تختلف
قد يختلف الإخراج المضغوط الدقيق الناتج من نفس ملف الإدخال غير المضغوط
بين إصدارات XZ Utils حتى لو كانت خيارات الضغط متطابقة. هذا لأن ملف
يمكن تحسين برنامج التشفير (ضغط أسرع أو أفضل) دون التأثير على تنسيق الملف.
يمكن أن يختلف الإخراج حتى بين الإنشاءات المختلفة لنفس إصدار XZ Utils ، إذا
يتم استخدام خيارات بناء مختلفة.

ما ورد أعلاه يعني أن التنفيذ - قابل للمزامنة لإنشاء rsyncable .xz الملفات لا تذهب
دون تجميد جزء من تنفيذ المشفر ، والذي يمكن استخدامه بعد ذلك
مع - قابل للمزامنة.

جزءا لا يتجزأ من .xz أجهزة فك الضغط
جزءا لا يتجزأ من .xz لا تدعم تطبيقات فك الضغط مثل XZ Embedded الملفات بالضرورة
خلقت بنزاهة الاختيار أنواع أخرى من لا شيء و crc32. منذ الافتراضي هو
- تحقق = crc64، عليك أن تستعمل - تحقق = لا شيء or - تحقق = crc32 عند إنشاء ملفات لتضمينها
الأنظمة.

خارج الأنظمة المدمجة ، كل شيء .xz تدعم برامج فك ضغط التنسيق جميع ملفات الاختيار أنواع أو في
الأقل قادرًا على فك ضغط الملف دون التحقق من سلامة التحقق مما إذا كان
خاص الاختيار غير مدعومة.

يدعم XZ Embedded عوامل تصفية BCJ ، ولكن فقط مع إزاحة البداية الافتراضية.

أمثلة


الملابس اليومية
ضغط الملف فو إلى foo.xz باستخدام مستوى الضغط الافتراضي (-6) وإزالة فو
إذا نجح الضغط:

xz فو

أزال الضغط bar.xz إلى شريط ولا تقم بإزالته bar.xz حتى لو نجح تخفيف الضغط:

xz -dk bar.xz

إنشاء baz.tar.xz مع الضبط المسبق -4e (-4 --شديد) ، وهو أبطأ من
الافتراضي -6، ولكنه يحتاج إلى ذاكرة أقل للضغط وإلغاء الضغط (48 ميجابايت و 5 ميجابايت ،
على التوالى):

القطران cf - baz | xz -4e> baz.tar.xz

يمكن فك ضغط مزيج من الملفات المضغوطة وغير المضغوطة إلى الإخراج القياسي بامتداد
أمر واحد:

xz -dcf a.txt b.txt.xz c.txt d.txt.lzma> abcd.txt

موازية ضغط of كثير ملفات
في GNU و * BSD ، تجد(1) و xargs(1) يمكن استخدامها لموازنة ضغط العديد
الملفات:

تجد . -نوع f \! -اسم '* .xz' -print0 \
| xargs -0r -P4 -n16 xz -T1

يوفر -P الخيار ل xargs(1) يحدد عدد التوازي xz العمليات. أفضل قيمة لـ
ال -n يعتمد الخيار على عدد الملفات المراد ضغطها. إذا كان هناك فقط ملف
زوجان من الملفات ، يجب أن تكون القيمة على الأرجح 1 ؛ بعشرات الآلاف من الملفات ، 100 أو
أكثر قد يكون مناسبًا لتقليل عدد xz يعالج ذلك xargs(1) سوف
في النهاية.

الخيار -T1،XNUMX لل xz هناك لإجبارها على وضع الخيوط الواحدة ، لأن xargs(1) هو
تستخدم للتحكم في مقدار الموازاة.

مطبوعات رجل الالي طريقة
احسب إجمالي عدد البايتات التي تم حفظها بعد ضغط عدة ملفات:

xz - robot --list * .xz | awk '/ ^ totals / {print $ 5- $ 4}'

قد يرغب البرنامج النصي في معرفة أنه يستخدم ما يكفي من الجديد xz. ما يلي sh(1) نص
يتحقق من أن رقم إصدار xz الأداة 5.0.0 على الأقل. هذه الطريقة
متوافق مع الإصدارات التجريبية القديمة ، والتي لا تدعم إصدارات --إنسان آلي الخيار:

لو ! Eval "$ (xz --robot - الإصدار 2> / dev / null)" ||
["$ XZ_VERSION" -lt 50000002] ؛ من ثم
صدى "xz الخاص بك قديم جدًا."
fi
قم بإلغاء تحديد XZ_VERSION LIBLZMA_VERSION

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

NEWLIM = $ ((123 << 20)) # 123 ميبي بايت
OLDLIM = $ (xz - روبوت - ذاكرة معلومات | قص -f3)
إذا [$ OLDLIM -eq 0 -o $ OLDLIM -gt $ NEWLIM]؛ من ثم
XZ_OPT = "$ XZ_OPT - تقليل-فك الضغط = $ NEWLIM"
تصدير XZ_OPT
fi

عرف ضاغط تصفية السلاسل
أبسط استخدام لسلاسل التصفية المخصصة هو تخصيص إعداد مسبق لـ LZMA2. هذا يمكن أن يكون
مفيد ، لأن الإعدادات المسبقة لا تغطي سوى مجموعة فرعية من التوليفات المفيدة المحتملة من
إعدادات الضغط.

أعمدة CompCPU للجداول من أوصاف الخيارات -0 -9 و
--شديد مفيدة عند تخصيص إعدادات LZMA2 المسبقة. هنا الأجزاء ذات الصلة
تم جمعها من هذين الجدولين:

CompCPU محدد مسبقًا
0-0
1-1
2-2
3-3
4-4
5-5
6-6
-5 هـ 7
-6 هـ 8

إذا كنت تعلم أن الملف يتطلب قاموسًا كبيرًا إلى حد ما (على سبيل المثال 32 ميغا بايت) للضغط جيدًا ،
لكنك تريد ضغطها بشكل أسرع من xz -8 سيفعل ذلك ، إعداد مسبق بقيمة منخفضة CompCPU
(على سبيل المثال 1) يمكن تعديله لاستخدام قاموس أكبر:

xz --lzma2 = ضبط مسبق = 1 ، dt = 32 ميغا بايت foo.tar

مع بعض الملفات ، قد يكون الأمر أعلاه أسرع من xz -6 أثناء الضغط
أفضل بكثير. ومع ذلك ، يجب التأكيد على أن بعض الملفات فقط هي التي تستفيد من ملف
قاموس كبير مع الحفاظ على قيمة CompCPU منخفضة. الموقف الأكثر وضوحا ، حيث أ
يمكن أن يساعد القاموس الكبير كثيرًا ، فهو أرشيف يحتوي على ملفات متشابهة جدًا بحجم
بضعة ميغا بايت لكل منهما. يجب أن يكون حجم القاموس أكبر بكثير من أي حجم
ملف فردي للسماح لـ LZMA2 بالاستفادة الكاملة من أوجه التشابه بين ملفات
ملفات متتالية.

إذا كان استخدام ذاكرة الضاغط وفك الضغط عالية جدًا على ما يرام ، والملف موجود
مضغوط لا يقل عن عدة مئات من الميجابايت ، قد يكون من المفيد استخدام ملف
القاموس من 64 MiB ذلك xz -9 سوف تستخدم:

xz -vv --lzma2 =ict = 192 ميجا بايت big_foo.tar

باستخدام -vv (- الإسراف - الإسراف) كما في المثال أعلاه يمكن أن يكون مفيدًا لرؤية الذاكرة
متطلبات الضاغط ومزيل الضغط. تذكر أن استخدام قاموس أكبر
من حجم الملف غير المضغوط مضيعة للذاكرة ، لذا فإن الأمر أعلاه ليس كذلك
مفيد للملفات الصغيرة.

في بعض الأحيان لا يهم وقت الضغط ، ولكن يجب أن يكون استخدام ذاكرة برنامج إلغاء الضغط
أبقى منخفضًا ، على سبيل المثال لإتاحة فك ضغط الملف على نظام مضمن. ال
يستخدم الأمر التالي -6e (-6 --شديد) كقاعدة ويضبط القاموس على
64 كيلوبايت. يمكن فك ضغط الملف الناتج باستخدام XZ Embedded (وهذا هو سبب وجود ملفات
- تحقق = crc32) باستخدام حوالي 100 كيلوبايت من الذاكرة.

xz --check = crc32 --lzma2 = ضبط مسبق = 6e ، dt = 64KiB foo

إذا كنت تريد الضغط على أكبر عدد ممكن من البايتات ، فاضبط عدد البيانات الحرفية
بتات السياق (lc) وعدد بتات الموضع (pb) يمكن أن تساعد في بعض الأحيان. ضبط
عدد بتات الموضع الحرفي (lp) قد يساعد أيضًا ، ولكن عادةً lc و pb هم أكثر
الأهمية. على سبيل المثال ، يحتوي أرشيف كود المصدر في الغالب على نص US-ASCII ، لذلك شيء من هذا القبيل
قد يعطي ما يلي ملفًا أصغر قليلاً (مثل 0.1٪) من xz -6e (جرب أيضًا بدون ملفات
م = 4):

xz --lzma2 = ضبط مسبق = 6e ، pb = 0 ، lc = 4 source_code.tar

يمكن أن يؤدي استخدام مرشح آخر مع LZMA2 إلى تحسين الضغط مع أنواع ملفات معينة.
على سبيل المثال لضغط مكتبة مشتركة x86-32 أو x86-64 باستخدام مرشح x86 BCJ:

xz --x86 --lzma2 libfoo.so

لاحظ أن ترتيب خيارات التصفية مهم. لو - x86 تم تحديده بعد
--lzma2, xz سيعطي خطأ ، لأنه لا يمكن أن يكون هناك أي مرشح بعد LZMA2 ، وكذلك
لأنه لا يمكن استخدام مرشح x86 BCJ كمرشح أخير في السلسلة.

يمكن أن يعطي مرشح دلتا مع LZMA2 نتائج جيدة مع الصور النقطية. يجب
عادةً ما تتفوق على PNG ، التي تحتوي على عدد قليل من المرشحات المتقدمة أكثر من دلتا البسيطة ولكنها تستخدم انكماش
للضغط الفعلي.

يجب حفظ الصورة بتنسيق غير مضغوط ، على سبيل المثال بتنسيق TIFF غير مضغوط. المسافة
تم تعيين معلمة مرشح دلتا لمطابقة عدد البايت لكل بكسل في الصورة.
على سبيل المثال ، احتياجات الصور النقطية RGB ذات 24 بت توزيعات = 3، ومن الجيد أيضًا أن تمرر الرصاص = 0 إلى LZMA2 إلى
تلائم المحاذاة ثلاثية البايت:

xz --delta = dist = 3 --lzma2 = pb = 0 foo.tiff

إذا تم وضع صور متعددة في أرشيف واحد (على سبيل المثال .قطران) ، مرشح دلتا
العمل على ذلك طالما أن جميع الصور لها نفس عدد البايت لكل بكسل.

استخدم xz عبر الإنترنت باستخدام خدمات onworks.net


Ad


Ad