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

در این بخش یاد می‌گیریم چطور با دستور tar فایل‌ها را فشرده کنیم، آرشیوها را استخراج کنیم و محتویات آن‌ها را ببینیم.

فشرده‌سازی یک پوشه کامل (ایجاد فایل tar.gz)

برای فشرده‌سازی یک پوشه یا چند فایل با فرمت tar.gz، از دستور زیر استفاده کنید:

tar -zcvf archive.tar.gz dir1 file1

در این دستور، پوشه dir1 و فایل file1 در یک آرشیو با نام archive.tar.gz قرار می‌گیرند.

گزینه‌های استفاده‌شده در دستور عبارت‌اند از:

  • -z: فشرده‌سازی با الگوریتم gzip
  • -c: ایجاد آرشیو جدید
  • -v: نمایش فایل‌ها هنگام انجام عملیات
  • -f: تعیین نام فایل آرشیو

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

tar -zcvf archive.tar.gz dir1

فشرده‌سازی با فرمت tar.bz2

اگر بخواهید از الگوریتم bzip2 استفاده کنید، دستور زیر را اجرا کنید:

tar -jcvf archive.tar.bz2 dir1 file1

در این دستور، گزینه -j برای فشرده‌سازی با bzip2 استفاده می‌شود. میزان فشرده‌سازی و سرعت اجرا به نوع فایل‌ها بستگی دارد.

استخراج یک آرشیو

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

tar -zxvf archive.tar.gz

با اجرای این دستور، محتویات آرشیو در مسیر فعلی استخراج می‌شوند.

استخراج آرشیو در مسیر مشخص

اگر می‌خواهید فایل‌ها در یک پوشه مشخص استخراج شوند، از گزینه -C استفاده کنید:

tar -zxvf archive.tar.gz -C /path/to/dir/

مسیر مقصد باید از قبل وجود داشته باشد و مجوزهای لازم برای نوشتن در آن را داشته باشید.

استخراج فایل tar.bz2

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

tar -jxvf archive.tar.bz2

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

tar -jxvf archive.tar.bz2 -C /path/to/dir/