COMPRESS(1)

الاسم
compress, uncompress, zcat - ضغط وفك ضغط البيانات

موجز
compress [ -f ] [ -k ] [ -v ] [ -c ] [ -V ] [ -r ] [ -b بتات ] [ -- ] [ اسم ... ]
uncompress [ -f ] [ -k ] [ -v ] [ -c ] [ -V ] [ -- ] [ اسم ... ]
zcat [ -V ] [ -- ] [ اسم ... ]

الوصف
ضغط يقلص حجم الملفات المسماة باستخدام ترميز ليمبل-زيف التكيفي. كلما أمكن، يُستبدل كل ملف بآخر بالامتداد .Z، مع الحفاظ على نفس أنماط الملكية وأوقات الوصول والتعديل. إذا لم تُحدد أي ملفات، يُضغط الإدخال القياسي إلى الإخراج القياسي. ضغط سيحاول فقط ضغط الملفات العادية. على وجه الخصوص، سيتجاهل الروابط الرمزية. إذا كان للملف روابط صلبة متعددة، سيرفض ضغط ضغطه ما لم يُعط العلم -f.

إذا لم يُعط -f وشُغّل ضغط في المقدمة، يُطلب من المستخدم عما إذا كان ينبغي استبدال ملف موجود.

يمكن استعادة الملفات المضغوطة إلى شكلها الأصلي باستخدام uncompress أو zcat.

uncompress يأخذ قائمة من الملفات في سطر أوامره ويستبدل كل ملف ينتهي اسمه بـ .Z ويبدأ بالرقم السحري الصحيح بملف غير مضغوط بدون .Z. سيكون للملف غير المضغوط وضع وملكية وأختام زمنية للملف المضغوط.

الخيار -k يجعل ضغط/uncompress يحتفظ بملفات الإدخال بدلاً من إزالتها آليًا.

الخيار -c يجعل ضغط/uncompress يكتب إلى الإخراج القياسي؛ لا تُغير أي ملفات.

zcat مطابق لـ uncompress -c. zcat يفك ضغط إما قائمة من الملفات في سطر الأوامر أو إدخاله القياسي ويكتب البيانات غير المضغوطة على الإخراج القياسي. zcat سيفك ضغط الملفات التي لها الرقم السحري الصحيح سواء كان لها لاحقة .Z أم لا.

إذا حُدد العلم -r، سيعمل ضغط بشكل تكراري. إذا كان أي من أسماء الملفات المحددة في سطر الأوامر أدلة، سينزل ضغط إلى الدليل ويضغط جميع الملفات التي يجدها هناك. عند الضغط، ستُتجاهل أي ملفات مضغوطة بالفعل، وعند فك الضغط، ستُتجاهل أي ملفات مفكوكة الضغط بالفعل.

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

ضغط يستخدم خوارزمية ليمبل-زيف المعدلة التي شاعت في "تقنية لضغط البيانات عالي الأداء"، تيري أ. ويلش، IEEE Computer، المجلد 17، العدد 6 (يونيو 1984)، الصفحات 8-19. تُستبدل السلاسل الفرعية الشائعة في الملف أولاً برموز 9 بت 257 وما فوق. عندما يُبلغ الرمز 512، تتحول الخوارزمية إلى رموز 10 بت وتستمر في استخدام المزيد من البتات حتى يُبلغ الحد المحدد بالعلم -b (مبدئي 16). يجب أن تكون البتات بين 9 و16. يمكن تغيير المبدئي في المصدر للسماح بتشغيل ضغط على آلة أصغر.

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

لاحظ أن العلم -b محذوف لـ uncompress، لأن معامل البتات المحدد أثناء الضغط مُرمّز داخل الإخراج، إلى جانب رقم سحري لضمان عدم محاولة فك ضغط بيانات عشوائية أو إعادة ضغط بيانات مضغوطة.

مقدار الضغط المُحصل عليه يعتمد على حجم الإدخال، عدد البتات لكل رمز، وتوزيع السلاسل الفرعية الشائعة. عادةً، يُقلص النص مثل كود المصدر أو الإنجليزية بنسبة 50-60%. الضغط أفضل عمومًا بكثير من ذلك المُحقق بترميز هوفمان (كما يُستخدم في pack)، أو ترميز هوفمان التكيفي (compact)، ويستغرق وقتًا أقل للحساب.

تحت الخيار -v، تُطبع رسالة تعطي النسبة المئوية للتقليص لكل ملف مضغوط.

يمكن استخدام -- لإيقاف تحليل الخيارات وإجبار جميع الوسائط المتبقية على أن تُعامل كمسارات.

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

الاستخدام: compress [-dfvcVr] [-b أقصى بتات] [ملف ...]
حُددت خيارات غير صالحة في سطر الأوامر.
أقصى بتات مفقود
يجب أن يتبع أقصى بتات -b.
ملف: ليس بتنسيق مضغوط
الملف المحدد لـ uncompress لم يكن مضغوطًا.
file: مضغوط بـ xx بت، يمكنه معالجة yy بت فقط
File ضغط بواسطة برنامج يمكنه التعامل مع bits أكثر من كود الضغط على هذا الجهاز. أعد ضغط الملف بـ bits أصغر.
file: لديه بالفعل لاحقة .Z -- لا تغيير
يُفترض أن الملف مضغوط بالفعل. أعد تسمية الملف وحاول مرة أخرى.
file: اسم الملف طويل جدًا لإضافة .Z
لا يمكن ضغط الملف لأن اسمه أطول من 12 حرفًا. أعد تسميته وحاول مجددًا. لا تظهر هذه الرسالة على أنظمة BSD.
الملف file موجود بالفعل؛ هل ترغب في الكتابة فوقه (y أو n)؟
أجب بـ "y" إذا كنت تريد استبدال ملف المخرجات؛ و "n" إذا لم ترد.
uncompress: إدخال تالف
اُكتشف انتهاك SIGSEGV، مما يعني عادةً أن ملف الإدخال قد تعرض للتلف.
الضغط: xx.xx%
النسبة المئوية من الإدخال التي وفرها الضغط. (ذات صلة فقط بـ -v.)
-- ليس ملفاً عادياً أو دليلاً: تُجُوهِلَ
عندما لا يكون ملف الإدخال ملفًا عاديًا أو دليلاً، (مثل رابط رمزي، مقبس، FIFO، ملف جهاز)، يُترك دون تغيير.
-- لديه xx روابط أخرى: لم يتغير
ملف الإدخال له روابط؛ يُترك دون تغيير. انظر ln(1) لمزيد من المعلومات. استخدم العلم -f لفرض ضغط الملفات ذات الروابط المتعددة.
-- ملف دون تغيير
لم يتحقق أي توفير بالضغط. يبقى الإدخال كما هو.

العلل
على الرغم من أن الملفات المضغوطة متوافقة بين الأجهزة ذات الذاكرة الكبيرة، يجب استخدام -b12 لنقل الملفات إلى بنى ذات مساحة بيانات عملية صغيرة (64 كيلوبايت أو أقل، كما هو موضح في سلسلة DEC PDP، Intel 80286، إلخ.)

انظر أيضًا
pack(1), compact(1)

ترجمة
تُرجمت هذه الصفحة من الدليل بواسطة زايد السعيدي <zayed.alsaidi@gmail.com>

هذه الترجمة هي وثيقة مجانية؛ راجع رخصة جنو العامة الإصدار 3 (https://www.gnu.org/licenses/gpl-3.0.html) أو ما بعده للاطلاع على شروط حقوق النشر. لا توجد أي ضمانات.

إذا وجدت أي أخطاء في ترجمة صفحة الدليل هذه، يرجى إرسال بريد إلكتروني إلى قائمة بريد المترجمين: kde-l10n-ar@kde.org.