زیپ
La زیپ برنامه هم یک ابزار فشرده سازی و هم یک بایگانی کننده است. فرمت فایل استفاده شده توسط این برنامه برای کاربران ویندوز آشنا است، زیرا می خواند و می نویسد وبلاگ فایل ها. با این حال، در لینوکس، از gzip برنامه فشرده سازی غالب با bzip2 یک دوم نزدیک بودن
در ابتدایی ترین کاربرد آن، زیپ به این صورت فراخوانی می شود:
زیپ فایل فشرده گزینه ها...
به عنوان مثال، برای ایجاد یک آرشیو فشرده از زمین بازی خود، این کار را انجام می دهیم:
[me@linuxbox ~]$ zip -r playground.zip playground
[me@linuxbox ~]$ zip -r playground.zip playground
مگر اینکه ما شامل -r گزینه بازگشت، فقط زمین بازی دایرکتوری (اما هیچ یک از محتویات آن) ذخیره نمی شود. اگر چه اضافه شدن پسوند وبلاگ خودکار است، ما پسوند فایل را برای وضوح اضافه می کنیم.
در طول ایجاد آرشیو فشرده، زیپ به طور معمول یک سری از پیام ها مانند این نمایش داده می شود:
اضافه کردن: playground/dir-020/file-Z (ذخیره شده 0%) اضافه کردن: playground/dir-020/file-Y (ذخیره شده 0%) اضافه کردن: playground/dir-020/file-X (ذخیره شده 0%) اضافه کردن: playground/dir-087/ (ذخیره شده 0%) افزودن: playground/dir-087/file-S (ذخیره شده 0%)
اضافه کردن: playground/dir-020/file-Z (ذخیره شده 0%) اضافه کردن: playground/dir-020/file-Y (ذخیره شده 0%) اضافه کردن: playground/dir-020/file-X (ذخیره شده 0%) اضافه کردن: playground/dir-087/ (ذخیره شده 0%) افزودن: playground/dir-087/file-S (ذخیره شده 0%)
این پیام ها وضعیت هر فایل اضافه شده به آرشیو را نشان می دهد. زیپ فایل ها را با استفاده از یکی از دو روش ذخیره سازی به بایگانی اضافه می کند: یا فایلی را بدون فشرده سازی ذخیره می کند، همانطور که در اینجا نشان داده شده است، یا فایلی را که فشرده سازی را انجام می دهد، تخلیه می کند. مقدار عددی نمایش داده شده پس از روش ذخیره سازی میزان فشرده سازی به دست آمده را نشان می دهد. از آنجایی که زمین بازی ما فقط حاوی فایل های خالی است، هیچ فشرده سازی روی محتوای آن انجام نمی شود.
استخراج محتویات یک فایل فشرده در هنگام استفاده از فایل فشرده ساده است جدا کردن برنامه:
[me@linuxbox ~]$ سی دی فو
[me@linuxbox foo]$ unzip ../playground.zip
[me@linuxbox ~]$ سی دی فو
[me@linuxbox foo]$ unzip ../playground.zip
یک نکته قابل ذکر است زیپ (به عنوان مخالف قیر) این است که اگر یک بایگانی موجود مشخص شده باشد، به جای جایگزینی، به روز می شود. این بدان معنی است که آرشیو موجود حفظ می شود، اما فایل های جدید اضافه می شوند و فایل های منطبق جایگزین می شوند.
ممکن است فایلها به صورت انتخابی از یک آرشیو فشرده با مشخص کردن آنها فهرست شده و استخراج شوند
../زمین بازی.zip
../زمین بازی.zip
تاریخ
----
تاریخ
----
زمان
----
زمان
----
10-05-16 09:25
10-05-16 09:25
باز کردن زیپ:
[me@linuxbox ~]$ unzip -l playground.zip playground/dir-087/file-Z
[me@linuxbox ~]$ unzip -l playground.zip playground/dir-087/file-Z
بایگانی:
طول
--------
0
--------
0
نام
----
زمین بازی/dir-087/file-Z
-------
1 پرونده
بایگانی:
طول
--------
0
--------
0
[me@linuxbox ~]$ سی دی فو
[me@linuxbox foo]$ unzip ../playground.zip playground/dir-087/file-Z
آرشیو: ../playground.zip
جایگزین زمین بازی/dir-087/file-Z؟ [y]es، [n]o، [A]ll، [N]یک، [r]نام: y
استخراج: زمین بازی/dir-087/file-Z
[me@linuxbox ~]$ سی دی فو
[me@linuxbox foo]$ unzip ../playground.zip playground/dir-087/file-Z
آرشیو: ../playground.zip
جایگزین زمین بازی/dir-087/file-Z؟ [y]es، [n]o، [A]ll، [N]یک، [r]نام: y
استخراج: زمین بازی/dir-087/file-Z
با استفاده از -l گزینه علل جدا کردن صرفاً فهرستی از محتویات آرشیو بدون استخراج فایل. اگر هیچ فایل(هایی) مشخص نشده باشد، جدا کردن تمام فایل های موجود در بایگانی را لیست می کند. را -v گزینه را می توان برای افزایش پرحرفی فهرست اضافه کرد. توجه داشته باشید که وقتی استخراج بایگانی با یک فایل موجود تضاد داشته باشد، قبل از جایگزینی فایل از کاربر خواسته می شود.
پسندیدن قیر, زیپ می تواند از ورودی و خروجی استاندارد استفاده کند، اگرچه پیاده سازی آن تا حدودی کمتر مفید است. این امکان وجود دارد که لیستی از نام فایل ها را به آن لوله کنید زیپ از طریق -@ گزینه:
[me@linuxbox foo]$ cd
[me@linuxbox ~]$ پیدا کردن زمین بازی -name "file-A" | zip -@ file-A.zip
[me@linuxbox foo]$ cd
[me@linuxbox ~]$ پیدا کردن زمین بازی -name "file-A" | zip -@ file-A.zip
در اینجا ما استفاده می کنیم پیدا کردن برای ایجاد لیستی از فایل های مطابق با آزمون -name "file-A"و سپس لیست را وارد کنید زیپ، که آرشیو را ایجاد می کند file-A.zip حاوی فایل های انتخاب شده است.
zip همچنین از نوشتن خروجی خود بر روی خروجی استاندارد پشتیبانی می کند، اما استفاده از آن محدود است زیرا تعداد کمی از برنامه ها می توانند از خروجی استفاده کنند. متاسفانه برنامه unzip ورودی استاندارد را نمی پذیرد. این مانع از استفاده از zip و unzip با هم برای انجام
فرم فایل شبکه کپی مانند قیر.
اما zip می تواند ورودی استاندارد را بپذیرد، بنابراین می توان از آن برای فشرده سازی خروجی برنامه های دیگر استفاده کرد:
[me@linuxbox ~]$ ls -l /etc/ | zip ls-etc.zip -
اضافه کردن: - (با کاهش 80%)
[me@linuxbox ~]$ ls -l /etc/ | zip ls-etc.zip -
اضافه کردن: - (با کاهش 80%)
در این مثال خروجی را لوله می کنیم ls به زیپ. مانند قیر, زیپ خط تیره انتهایی را به صورت "استفاده از ورودی استاندارد برای فایل ورودی" تفسیر می کند.
La جدا کردن برنامه اجازه می دهد تا خروجی آن به خروجی استاندارد ارسال شود زمانی که -p گزینه (برای لوله) مشخص شده است:
[me@linuxbox ~]$ unzip -p ls-etc.zip | کمتر
[me@linuxbox ~]$ unzip -p ls-etc.zip | کمتر
ما به برخی از موارد اساسی که زیپ/جدا کردن می تواند انجام دهد. هر دوی آنها گزینههای زیادی دارند که به انعطافپذیری آنها میافزاید، اگرچه برخی از آنها پلتفرم مخصوص سیستمهای دیگر هستند. صفحه مرد برای هر دو زیپ و جدا کردن بسیار خوب هستند و حاوی مثال های مفیدی هستند. با این حال، کاربرد اصلی این برنامه ها به جای انجام فشرده سازی و بایگانی در لینوکس، برای تبادل فایل ها با سیستم های ویندوز است. قیر و از gzip بسیار ترجیح داده می شوند.