۰
(۰)

دستور zip در لینوکس یک ابزار قدرتمند و پرکاربرد برای فشرده‌سازی فایل‌ها و دایرکتوری‌هاست که به کاهش حجم آنها برای ذخیره‌سازی یا انتقال کمک می‌کند.

این دستور با گرفتن یک یا چند فایل، آنها را در یک فایل فشرده با پسوند .zip قرار می‌دهد که معمولاً با اعمال فشرده‌سازی، فضای ذخیره‌سازی را صرفه‌جویی می‌کند.

دستور zip برای مدیران سیستم و کاربران لینوکس مزایای زیادی دارد، زیرا مدیریت حجم زیادی از داده‌ها را ساده می‌کند، به‌ویژه هنگام کار با نسخه‌های پشتیبان یا انتقال فایل‌ها در شبکه‌ها.

انعطاف‌پذیری این دستور به دلیل گزینه‌های مختلف آن است، مانند انتخاب سطح فشرده‌سازی، افزودن رمز عبور، یا تقسیم آرشیوها به بخش‌های کوچکتر، که به کاربران امکان می‌دهد فرایند را مطابق با نیازهای خود تنظیم کنند.

فهرست مطالب

استفاده از zip در خط فرمان:

ساختار اصلی دستور:

zip [گزینه‌ها] <نام-آرشیو>.zip <فایل۱> <فایل۲>

  • zip: دستور برای ایجاد آرشیو فشرده .zip.
  • [گزینه‌ها]: پارامترهای اختیاری برای تغییر نحوه عملکرد دستور (مانند سطح فشرده‌سازی یا حذف فایل‌ها).
  • <نام-آرشیو>.zip: نام فایل فشرده خروجی.
  • <فایل۱> <فایل۲> …: فایل‌ها یا دایرکتوری‌هایی که قصد فشرده‌سازی آنها را دارید.

استفاده از zip در محیط گرافیکی:

کاربران می‌توانند با انتخاب فایل‌ها، گزینه «Compress» را برگزینند و فرمت .zip را مشخص کنند تا به‌سادگی فایل‌های خود را آرشیو کنند.

پیش‌نیازهای استفاده از دستور zip در لینوکس

برای استفاده از دستور zip و فشرده‌سازی فایل‌ها در لینوکس، سیستم شما باید شرایط زیر را داشته باشد:

  1. یک سرور لینوکس (VPS) با یکی از توزیع‌های سازگار مانند اوبونتو، دبیان یا CentOS.
  2. دسترسی به یک کاربر غیر ریشه‌ای با sudo.
  3. دسترسی به ترمینال یا خط فرمان برای اجرای دستور zip.

بررسی نصب بودن دستور zip در توزیع‌های مختلف لینوکس

در سیستم‌های مبتنی بر اوبونتو/دبیان:

sudo apt update sudo apt install zip

در CentOS/Fedora/RHEL:

sudo yum install zip

در Arch Linux و Manjaro:

sudo pacman -S zip unzip

بررسی نصب بودن دستور zip:

zip --version

نمونه‌های کاربردی دستور zip در لینوکس

دستور zip ابزاری قدرتمند برای فشرده‌سازی، ایمن‌سازی و انتقال داده‌ها در لینوکس است. در ادامه، چند نمونه عملی برای آشنایی با نحوه استفاده از این دستور آورده شده است:

۱. ایجاد یک آرشیو ZIP

برای ایجاد یک فایل فشرده، از دستور zip همراه با نام آرشیو و فایل‌های موردنظر استفاده کنید.

ساختار اصلی:

zip <نام-آرشیو>.zip <فایل۱> <فایل۲> ...

مثال:

zip documents.zip opera_project.txt

خروجی:

adding: opera_project.txt (deflated 18%)

این دستور به‌ویژه برای فشرده‌سازی داده‌ها جهت پشتیبان‌گیری یا کاهش حجم فایل‌ها برای اشتراک‌گذاری مفید است.

۲. مشاهده محتویات آرشیو ZIP

برای مشاهده فایل‌های موجود در یک آرشیو بدون استخراج آن، از گزینه -sf استفاده کنید.

ساختار اصلی:

zip -sf <نام-آرشیو>.zip

مثال:

zip -sf files.zip

خروجی:

Archive: files.zip
  Length    Date    Time    Name
---------  ---------- -----   ----
     ۱۲۳۴  ۱۲-۱۲-۲۰۲۴ ۱۰:۰۰ opera_project.txt
---------                     -------
     ۱۲۳۴                     ۱ file

۳. افزودن نوع خاصی از فایل‌ها به آرشیو ZIP

برای افزودن فایل‌های با پسوند خاص، از گزینه -i استفاده کنید.

ساختار اصلی:

zip -i "*.پسوند" <نام-آرشیو>.zip <فایل۱> <فایل۲> ...

مثال:

zip -i "*.txt" documents.zip opera_project.txt report.txt

خروجی:

adding: opera_project.txt (deflated 18%) 
adding: report.txt (deflated 20%)

۴. تنظیم سطح فشرده‌سازی

با استفاده از گزینه -# (که # عددی بین ۰ تا ۹ است)، می‌توانید سطح فشرده‌سازی را کنترل کنید.

ساختار اصلی:

zip -9 <نام-آرشیو>.zip <فایل۱> <فایل۲> ...

مثال:

zip -9 documents.zip opera_project.txt

خروجی:

adding: opera_project.txt (deflated 58%)

۵. فشرده‌سازی فایل‌ها و دایرکتوری‌ها به‌صورت همزمان

برای فشرده‌سازی دایرکتوری‌ها به همراه فایل‌ها، از گزینه -r استفاده کنید.

ساختار اصلی:

zip -r <نام-آرشیو>.zip <نام-دایرکتوری> <فایل۱> <فایل۲> ...

مثال:

zip -r documents.zip opera_project report.txt

خروجی:

adding: opera_project/ (stored 0%)
adding: opera_project/file1.txt (deflated 20%)
 adding: report.txt (deflated 30%)

ترکیب گزینه‌ها:
می‌توانید -r را با -q (برای کاهش خروجی) ترکیب کنید:

zip -r -q documents.zip opera_project report.txt

۶. حذف فایل از یک آرشیو ZIP موجود

برای حذف یک فایل خاص از یک آرشیو، از گزینه -d استفاده کنید.

ساختار اصلی:

zip -d <نام-آرشیو>.zip <نام-فایل-برای-حذف>

مثال:

zip -d project.zip opera_notes.txt

خروجی:

deleting: opera_notes.txt

این مثال‌ها به شما کمک می‌کنند تا از دستور zip برای مدیریت فایل‌ها به روشی حرفه‌ای استفاده کنید.

۷. به‌روزرسانی فایل‌های موجود در یک آرشیو ZIP

گزینه -u در دستور zip امکان به‌روزرسانی فایل‌های موجود در یک آرشیو را فراهم می‌کند. این کار تنها فایل‌هایی که تغییر کرده‌اند را مجدداً اضافه می‌کند، و در نتیجه زمان و فضای ذخیره‌سازی را صرفه‌جویی می‌کند.

ساختار اصلی:

zip -u <نام-آرشیو>.zip <فایل-برای-به‌روزرسانی>

مثال:

zip -u documents.zip opera_project.txt

خروجی:

updating: opera_project.txt (deflated 20%)

این گزینه برای حفظ حالت فعلی آرشیو بدون نیاز به بازسازی کامل آن بسیار مفید است.

۸. انتقال فایل‌ها به یک آرشیو ZIP

گزینه -m فایل‌ها را فشرده کرده و سپس از مکان اصلی حذف می‌کند. این روش فایل‌ها را به آرشیو منتقل کرده و فضای سیستم را بهینه می‌کند.

ساختار اصلی:

zip -m <نام-آرشیو>.zip <فایل-برای-انتقال>

مثال:

zip -m documents.zip opera_project.txt

خروجی:

adding: opera_project.txt (deflated 18%)

این روش برای ترکیب فشرده‌سازی و مدیریت سریع فایل‌ها بسیار کاربردی است.

۹. فشرده‌سازی بازگشتی دایرکتوری‌ها

گزینه -r تمام فایل‌ها و زیردایرکتوری‌های یک دایرکتوری را به‌صورت بازگشتی فشرده می‌کند.

ساختار اصلی:

zip -r <نام-آرشیو>.zip <نام-دایرکتوری>

مثال:

zip -r documents.zip opera_project

خروجی:

adding: opera_project/
 adding: opera_project/opera_project.txt (deflated 25%)

این گزینه برای فشرده‌سازی پروژه‌های بزرگ یا تهیه نسخه پشتیبان بسیار مناسب است.

۱۰. حذف فایل‌های ناخواسته از آرشیو ZIP

گزینه -x امکان حذف فایل‌های مشخصی را از فرآیند فشرده‌سازی فراهم می‌کند. این گزینه برای حذف فایل‌های موقت یا لاگ‌ها بسیار کاربردی است.

ساختار اصلی:

zip -r -x <فایل-برای-حذف> <نام-آرشیو>.zip <نام-دایرکتوری>

مثال:

zip -r -x "*.log" documents.zip opera_project

خروجی:

adding: opera_project/
 adding: opera_project/opera_project.txt (deflated 20%)

این روش به تمیز نگه‌داشتن آرشیو کمک می‌کند و از افزودن داده‌های غیرضروری جلوگیری می‌کند.

۱۱. مشاهده جزئیات آرشیو ZIP

گزینه -v اطلاعات دقیقی درباره فایل‌های اضافه‌شده به آرشیو نشان می‌دهد.

ساختار اصلی:

zip -v <نام-آرشیو>.zip <فایل۱> <فایل۲> ...

مثال:

zip -v documents.zip opera_project.txt

خروجی:

adding: opera_project.txt (deflated 18%)
 creating: documents.zip
 adding: opera_project.txt (stored 18%)

این گزینه برای پیگیری فرآیند فشرده‌سازی مفید است.

۱۲. رمزگذاری آرشیو ZIP

گزینه -e امکان ایجاد فایل‌های ZIP محافظت‌شده با رمز عبور را فراهم می‌کند، و دسترسی به محتویات آرشیو را محدود می‌سازد.

ساختار اصلی:

zip -e <نام-آرشیو>.zip <فایل۱> <فایل۲> ...

مثال:

zip -e secure_documents.zip 
opera_project report.txt

خروجی:

 adding: opera_project/ (stored 0%)
 adding: report.txt (deflated 20%)

با این گزینه، فایل ZIP رمزگذاری شده و برای استخراج محتویات آن نیاز به رمز عبور خواهد بود. این روش برای حفاظت از داده‌های حساس در محیط لینوکس ایده‌آل است.

۱۳. ایجاد آرشیوهای ZIP چند بخشی

گزینه -s در دستور zip امکان تقسیم یک آرشیو بزرگ ZIP به بخش‌های کوچک‌تر و قابل مدیریت را فراهم می‌کند. این ویژگی زمانی کاربرد دارد که نیاز به انتقال یا ذخیره فایل‌های بزرگ به‌صورت بخش‌بخش، مثلاً برای ارسال ایمیل یا آپلود روی سرور با محدودیت حجم، وجود داشته باشد.

ساختار اصلی:

zip -s <حجم> <نام-آرشیو>.zip <فایل۱> <فایل۲> ...

در این دستور، <حجم> حداکثر اندازه هر بخش از آرشیو را مشخص می‌کند (مثلاً ۱۰m برای ۱۰ مگابایت).

مثال:
برای تقسیم دایرکتوری opera_project به آرشیوهای چند بخشی که هر بخش ۱۰ مگابایت باشد:

zip -s 10m split_project.zip opera_project

خروجی:

adding: opera_project/ (stored 0%)
 adding: opera_project/file1.txt (deflated 20%)
 adding: opera_project/subfolder/ (stored 0%)
 creating split_project.zip.z01
 creating split_project.zip.z02

این روش برای انتقال و مدیریت فایل‌های حجیم بسیار کاربردی است و تضمین می‌کند که داده‌ها به‌صورت بخش‌بخش و در اندازه‌های مشخص ذخیره یا توزیع شوند.

هر بخش آرشیو در فایلی جداگانه ذخیره می‌شود (مانند split_project.zip.z01 و split_project.zip.z02).

ایجاد آرشیو ZIP با رابط گرافیکی (GUI) در لینوکس

برای افرادی که رابط گرافیکی را ترجیح می‌دهند، استفاده از مدیر فایل (File Manager) برای ایجاد یک آرشیو ZIP روش ساده‌ای است. این روش به‌خصوص برای کاربران تازه‌کار لینوکس که با دستورات خط فرمان آشنایی ندارند، مناسب است.

مراحل:

  1. انتخاب فایل‌ها یا پوشه‌ها:
    به مدیر فایل (File Manager) بروید و فایل‌ها یا پوشه‌هایی را که می‌خواهید فشرده کنید، انتخاب کنید.
  2. باز کردن گزینه‌ها با کلیک راست:
    روی آیتم‌های انتخاب‌شده راست‌کلیک کنید و گزینه “Compress” را از منوی بازشده انتخاب کنید.
  3. انتخاب فرمت فشرده‌سازی:
    فرمت .zip را به‌عنوان فرمت خروجی انتخاب کنید.
  4. ذخیره آرشیو ZIP:
    نام و مکان ذخیره آرشیو را مشخص کرده و روی گزینه “Create” کلیک کنید.

این روش برای کاربران تازه‌کار بسیار آسان و سریع است و نیازی به دانستن دستورات خط فرمان ندارد.

انتخاب فرمت ZIP: در کادری که نمایش داده می‌شود، فرمت .zip را از میان گزینه‌های موجود برای فشرده‌سازی انتخاب کنید.

انتخاب سطح فشرده‌سازی (اختیاری): برخی ابزارهای گرافیکی به شما این امکان را می‌دهند که سطح فشرده‌سازی را تنظیم کنید، که می‌تواند آرشیو را کوچک‌تر یا فرآیند فشرده‌سازی را سریع‌تر کند.

ایجاد آرشیو ZIP: پس از انتخاب فرمت و تنظیم گزینه‌ها، روی “Create” کلیک کنید تا آیتم‌های انتخاب‌شده در یک آرشیو ZIP فشرده شوند.

چگونه یک فایل ZIP را از حالت فشرده خارج کنیم؟
پس از یادگیری فشرده‌سازی فایل‌ها با دستور zip، می‌توانید به‌سادگی فرآیند را معکوس کرده و فایل‌ها را با دستور unzip از حالت فشرده خارج کنید.

دستور unzip یک روش ساده برای استخراج محتوای فایل‌های ZIP است. به‌طور پیش‌فرض، فایل‌ها را در همان دایرکتوری فعلی از حالت فشرده خارج می‌کند و دسترسی به فایل‌های فشرده‌شده را برای مدیریت یا انتقال آسان می‌سازد.

ساختار اصلی دستور:

unzip <archive-name>.zip

مثال:

برای خارج کردن فایل opera_backup.zip از حالت فشرده، دستور زیر را اجرا کنید:

unzip opera_backup.zip

خروجی:

Archive: opera_backup.zip
inflating: opera_backup/file1.txt
 inflating: opera_backup/file2.txt
inflating: opera_backup/file3.txt

استفاده از دستور unzip برای استخراج فایل‌های ZIP در لینوکس، فرآیندی سریع و کارآمد برای دسترسی و بازگردانی محتوای آرشیوهای فشرده است. این روش برای بازیابی سریع داده‌ها جهت استفاده یا تغییرات بیشتر ایده‌آل است.

استخراج فایل‌ها به یک دایرکتوری مشخص

برای استخراج فایل‌ها به یک دایرکتوری خاص، از گزینه -d همراه با دستور unzip استفاده کنید. این روش کنترل بهتری بر محل ذخیره‌سازی فایل‌ها فراهم می‌کند.

ساختار اصلی دستور:

unzip <archive-name>.zip -d <target-directory>

مثال:

برای استخراج فایل opera_backup.zip در دایرکتوری /home/user/backup/، دستور زیر را اجرا کنید:

unzip opera_backup.zip -d /home/user/backup/

خروجی:

Archive: opera_backup.zip
inflating: /home/user/backup/file1.txt
inflating: /home/user/backup/file2.txt

این روش باعث می‌شود فایل‌ها به‌طور منظم و در مکان‌های مشخصی ذخیره شوند، که برای مدیریت آرشیوهای بزرگ بسیار مفید است.

استخراج فایل‌های محافظت‌شده با رمز عبور

برای استخراج فایل‌های ZIP محافظت‌شده با رمز عبور، از گزینه -P همراه با دستور unzip و رمز عبور استفاده کنید.

ساختار اصلی دستور:

 

 

unzip -P <password> <archive-name>.zip

مثال:

برای استخراج فایل opera_data.zip با رمز عبور securepass123، دستور زیر را اجرا کنید:

unzip -P securepass123 opera_data.zip

خروجی:

Archive: opera_data.zip
 inflating: file1.txt
inflating: file2.txt

این روش به شما امکان می‌دهد فایل‌های محافظت‌شده را سریع و ساده از حالت فشرده خارج کنید و در محیط‌های ایمن استفاده کنید.

مشاهده محتوای فایل ZIP بدون استخراج

برای مشاهده محتوای فایل ZIP بدون خارج کردن آن از حالت فشرده، می‌توانید از گزینه -l استفاده کنید.

ساختار اصلی دستور:

unzip -l <archive-name>.zip

مثال:

برای مشاهده محتوای فایل opera_files.zip، دستور زیر را اجرا کنید:

unzip -l opera_files.zip

خروجی:

Archive:  opera_files.zip  
  Length   Date   Time    Name  
---------  ----   ----    ----  
      ۱۲۳۴  ۲۰۲۴-۱۱-۰۱ ۱۲:۳۴   file1.txt  
      ۵۶۷۸  ۲۰۲۴-۱۱-۰۱ ۱۲:۳۵   file2.txt  
      ۲۳۴۵  ۲۰۲۴-۱۱-۰۱ ۱۲:۳۶   image.jpg  
---------                         -------  
     ۱۰۲۵۷                         ۳ files  

این دستور اطلاعاتی از قبیل نام فایل‌ها، اندازه، و زمان آخرین تغییر را نمایش می‌دهد و به شما کمک می‌کند قبل از استخراج، محتوای فایل را بررسی کنید.


چگونه از طریق رابط گرافیکی (GUI) فایل‌های ZIP را استخراج کنیم؟

استخراج فایل‌ها از طریق رابط گرافیکی ساده و کاربرپسند است و به شما این امکان را می‌دهد بدون نیاز به دستورات خط فرمان، فایل‌های ZIP را مدیریت کنید.

مراحل استخراج فایل ZIP با استفاده از GUI در لینوکس:

  1. پیدا کردن فایل ZIP: مدیر فایل خود را باز کرده و به مکان فایل ZIP که می‌خواهید استخراج کنید بروید.
  2. کلیک راست روی فایل ZIP: پس از یافتن فایل، روی آن کلیک راست کرده تا منوی زمینه با گزینه‌های موجود باز شود.
  3. انتخاب گزینه Extract: در منوی زمینه، گزینه “Extract Here” را برای استخراج فایل‌ها در همان پوشه انتخاب کنید، یا “Extract to…” را برای انتخاب مکان مشخصی جهت استخراج فایل‌ها انتخاب کنید.

انتخاب پوشه هدف (در صورت نیاز):
اگر گزینه “Extract to…” را انتخاب کنید، یک کادر محاوره‌ای باز می‌شود. پوشه‌ای که می‌خواهید فایل‌های از حالت فشرده خارج‌شده در آن قرار گیرند را انتخاب کرده و سپس روی “Extract” یا “OK” کلیک کنید تا تأیید شود.

دسترسی به فایل‌های استخراج‌شده:
پس از اتمام فرآیند استخراج، به محلی که فایل‌ها را در آن استخراج کرده‌اید بروید تا به فایل‌ها دسترسی پیدا کنید.

چگونه فایل‌های ZIP بزرگ را مدیریت کنیم؟

برای تقسیم فایل‌های ZIP بزرگ، از دستور زیر استفاده کنید:

zip -s 50m archive.zip file

این دستور فایل‌های ZIP را به بخش‌های ۵۰ مگابایتی تقسیم می‌کند و انتقال یا اشتراک‌گذاری فایل‌های بزرگ را با بخش‌بندی آن‌ها به قسمت‌های کوچک‌تر آسان‌تر می‌کند.

آیا می‌توان به یک آرشیو ZIP موجود فایل اضافه کرد؟

بله، شما می‌توانید با استفاده از دستور زیر فایل‌های جدید یا به‌روزرسانی‌شده را به آرشیو ZIP موجود اضافه کنید:

zip -u archive.zip file.txt

این دستور برای افزودن فایل‌ها به یک آرشیو فشرده‌شده بدون نیاز به بازسازی مجدد آن کاربرد دارد.

اگر دستور ZIP در سیستم وجود نداشت چه کار کنیم؟

اگر سیستم دستور zip را شناسایی نکرد، باید بسته مربوطه را نصب کنید. در سیستم‌های مبتنی بر Debian از دستور زیر استفاده کنید:

sudo apt install zip

و در سیستم‌های مبتنی بر Red Hat از دستور زیر:

sudo yum install zip

آیا می‌توان سطح فشرده‌سازی را کنترل کرد؟

بله، می‌توانید با استفاده از گزینه برای بدون فشرده‌سازی تا برای حداکثر فشرده‌سازی سطح را تنظیم کنید.
مثال:

zip -9 archive.zip file

سطح فشرده‌سازی بالاتر فضای بیشتری را ذخیره می‌کند، اما ممکن است فرآیند را کندتر کند.

چگونه محتوای فایل ZIP را بدون استخراج مشاهده کنیم؟

برای مشاهده محتویات یک آرشیو ZIP بدون خارج کردن آن از حالت فشرده، از دستور زیر استفاده کنید:

unzip -l archive.zip

این دستور فایل‌ها و اندازه‌های آن‌ها را درون آرشیو لیست می‌کند بدون اینکه فایل‌ها استخراج شوند.

چگونه فقط فایل‌های خاصی را استخراج کنیم؟

برای استخراج فایل‌های مشخص از یک آرشیو ZIP، از دستور زیر استفاده کنید:

unzip archive.zip file1.txt

این روش زمانی مفید است که فقط به فایل‌های خاصی نیاز دارید و نمی‌خواهید کل آرشیو را استخراج کنید.

بهترین شیوه‌ها برای استفاده از دستور zip در لینوکس:

هنگام استفاده از دستور zip برای بکاپ‌گیری یا انتقال فایل‌ها، این موارد را در نظر بگیرید:

  1. همیشه بعد از فشرده‌سازی، سلامت فایل‌ها را با دستور زیر بررسی کنید:
    zip -sf <archive-name>.zip
  2. برای محافظت از فایل‌های حساس از رمز عبور استفاده کنید:
    zip -e <archive-name>.zip

    این روش به‌ویژه هنگام انتقال فایل‌ها در شبکه‌های غیرقابل اعتماد مفید است.

نتیجه‌گیری

دستور zip در لینوکس ابزاری قدرتمند برای مدیریت فایل‌ها است که با فشرده‌سازی آن‌ها به آرشیوهای کوچک‌تر و سازمان‌یافته، فضای ذخیره‌سازی را بهینه کرده و اشتراک‌گذاری فایل‌ها را آسان‌تر می‌کند.

این مقاله طیفی از گزینه‌های دستور zip، از فشرده‌سازی پایه گرفته تا تکنیک‌های پیشرفته مانند رمزگذاری، فشرده‌سازی بازگشتی، و انتخاب/حذف فایل‌های خاص را پوشش داده است.

با دنبال کردن این مثال‌ها و توضیحات، کاربران لینوکس می‌توانند تسلط بیشتری بر دستور zip پیدا کنند و از آن برای مدیریت بهتر فایل‌ها، ذخیره‌سازی داده‌ها و افزایش امنیت فایل‌ها در کاربردهای مختلف بهره ببرند.

چقدر این مطلب مفید بود؟

روی یک ستاره کلیک کنید تا به آن امتیاز دهید!

میانگین امتیاز ۰ / ۵. تعداد آرا: ۰

تا الان رای نیامده! اولین نفری باشید که به این پست امتیاز می دهید.