دستور tar در لینوکس

"دستور tar در ترمینال لینوکس شامل گروهی از دستورات است که برای فشرده سازی فایل‌ها در آرشیو مورد استفاده قرار می‌گیرد"

دستور tar در لینوکس (آرشیو و فشرده‌سازی)

دستور tar در لینوکس یکی از ضروری ترین دستورات در مدیریت فایل است. مخفف Tape Archive است و برای ایجاد و استخراج فایل های آرشیو استفاده می شود. یک فایل بایگانی یک فایل فشرده است که حاوی یک یا چند فایل همراه با هم برای ذخیره سازی و قابلیت حمل در دسترس تر است. در این راهنما، از طریق مثال‌هایی، نحوه ایجاد، فهرست کردن، ویرایش و استخراج فایل‌های بایگانی tar را نشان خواهیم داد و برخی از گزینه‌های فرمان tar را که بیشتر مورد استفاده قرار می‌گیرند پوشش می‌دهیم.

سینتکس دستور tar

دستور tar در لینوکس به صورت زیر نوشته می‌شود:

$ $ tar [options][archive-file] [file or dir to be archived]

گزینه‌های دستور tar

بیایید به برخی از گزینه های ارائه شده برای دستور tar نگاه کنیم:

  • c- این یک فایل آرشیو ایجاد می‌کند.
  • x- این گزینه فایل بایگانی را استخراج می‌کند.
  • f- نام فایل آرشیو را مشخص می‌کند.
  • v- این گزینه برای هر عملیات tar در ترمینال اطلاعات مفصل چاپ می‌کند.
  • t- این گزینه همه فایل‌های داخل یک فایل آرشیو را فهرست می‌کند.
  • u- این گزینه یک فایل را بایگانی می‌کند و سپس آن را به یک فایل بایگانی موجود اضافه می‌کند.
  • r- این گزینه یک فایل یا دایرکتوری واقع در یک فایل tar را به روز می کند.
  • z- با استفاده از فشرده سازی gzip یک فایل tar ایجاد می کند.
  • j- با استفاده از فشرده سازی bzip2 یک فایل آرشیو ایجاد کنید.
  • w- گزینه w- یک فایل بایگانی را تایید می کند.

ایجاد یک فایل آرشیو

ابزار tar به شما امکان می دهد با استفاده از الگوریتم های فشرده سازی مختلف مانند xz، gzip و bzip2 فایل های آرشیو ایجاد کنید. قرارداد پذیرفته شده اضافه کردن پسوند فشرده سازی به فایل فشرده است. به عنوان مثال، هنگام استفاده از فشرده سازی gzip (با استفاده از گزینه "z-")، فایل باید پسوند ".tar.gz" داشته باشد.

$ tar -czvf sales.tar.gz  sales1.pdf sales2.pdf sales3.pdf

در این مثال، دستور یک فایل با نام “sales.tar.gz” از سه فایل PDF ایجاد می کند. به طور مشابه، هنگام استفاده از فشرده سازی bzip2 (با استفاده از گزینه "j-")، فایل آرشیو باید پسوند ".tar.bz2" را به عنوان پسوند داشته باشد.

$ tar -cjvf sales.tar.bz2 sales1.pdf sales2.pdf sales3.pdf

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

$ tar -cvf home.tar /home/james

فهرست محتویات یک فایل آرشیو

از گزینه "t-" می توان برای فهرست کردن محتویات یک فایل آرشیو بدون استخراج آن استفاده کرد.

$ tar -tf sales.tar.gz

این دستور همه فایل‌های موجود در آرشیو sales.tar.gz را فهرست می‌کند.

فهرست محتویات یک فایل آرشیو

راه های مختلفی برای استخراج فایل فشرده با استفاده از دستور tar وجود دارد.

استخراج به فهرست فعلی

برای استخراج بایگانی در دایرکتوری فعلی، از گزینه "x-" مانند دستور زیر استفاده کنید.

$ tar -xvf documents.tar.gz

در این مثال، فایل “documents.tar.gz” را که شامل سه فایل متنی است، از حالت فشرده خارج کرده یا استخراج می کنیم.

استخراج در دایرکتوری جداگانه

برای استخراج یک بایگانی به دایرکتوری دیگری، همانطور که در مثال زیر نشان داده شده است، گزینه "c-" توسط مسیر مقصد دنبال می شود.

$ tar -xvf documents.tar.gz -C /tmp/files

این دستور محتویات فایل آرشیو “documents.tar.gz” را در دایرکتوری /tmp/files استخراج می کند.

فایل های خاص را از یک آرشیو استخراج کنید

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

$ tar -xvf documents.tar.gz file1.txt file2.tx

در این مثال، فایل‌های “file1.txt” و “file2.txt” را از آرشیو “documents.tar.gz” استخراج می‌کنیم.

افزودن یک فایل به آرشیو tar

برای افزودن یا اضافه کردن یک فایل بایگانی "tar."، از گزینه "r-" مانند مثال زیر استفاده کنید.

$ tar -rvf files.tar file3.txt

در این مثال، فایل file3.txt را به فایل archives.tar اضافه می کنیم.

حذف یک فایل از آرشیو tar

برای حذف یک فایل از آرشیو "tar." از گزینه delete-- همانطور که نشان داده شده است استفاده کنید.

$ tar --delete -f archives.tar file3.txt

در این مثال، فایل “file3.txt” را از فایل archives.tar حذف می کنیم.

فشرده سازی یک آرشیو

دستور tar همچنین می تواند برای فشرده سازی آرشیو با استفاده از فشرده سازی gzip یا bzip2 استفاده شود. برای ایجاد یک فایل فشرده می توان از گزینه z- یا j- به همراه گزینه c- استفاده کرد.

$ tar -zcvf archive.tar.gz files_to_compress

این دستور یک آرشیو "tar.gz." از فایل های مشخص شده ایجاد می کند.

$ tar -jcvf archive.tar.bz2 files_to_compress

این دستور یک آرشیو "tar.bz2." از فایل های مشخص شده ایجاد می کند.

یک بایگانی را از حالت فشرده خارج کنید

برای از حالت فشرده خارج کردن یک فایل "tar.gz." -

$ tar -zxvf archive.tar.gz

برای از حالت فشرده خارج کردن یک فایل "tar.bz2." -

$ tar -jxvf archive.tar.bz2

منابع

Linux tar Command

B/tar_command