مقدمة إلى أمر tar في لينكس


محمد أحمد العيل

يعدّ أمر tar من بين الأدوات التي يشيع استخدامها في سطر أوامر لينكس، إلا أن جوانب مفيدة كثيرة في الأمر تبقى مجهولة. نعرض في هذا المقال بعض أشهر استخدامات الأمر tar إضافة إلى استخدامات رائعة أخرى يقل الانتباه إليها.

linux-tar-command.png

أول ما تجب معرفته هو الغرض الأساسي من tar؛ إذ يعمل الأمر على جمع الكثير من الملفات في واحد. إذا نفذت أمر tar على مجلّد من 37 ملفّا فستحصُل على ملفّ واحد يضمّها جميعا وبالتي يسهُل مشاركتها مع الآخرين. كما أن الأمر يحافظ على بنية المجلّد ويمكن أن يحافظ على الأذونات ومعلومات الوقت والزمن كذلك.

الخيارات

في ما يلي قائمة بأهم الخيارات التي يمكن استخدامها مع tar.

  • c: إنشاء ملف أرشيف.
  • f: استخدام مُخرج الأمر لإنشاء ملف. تظهر مخرجات الأمر في الطرفية فقط إن لم يٍُستخدَم هذا الخيار.
  • x: استخراج محتويات ملف أرشيف.
  • j: استخدام خوارزمية bzip2 لضغط الملفات.
  • z: استخدام خوارزمية gzip لضغط الملفات.
  • p: الحفاظ على الأذونات عند استخراج الملفات.
  • t: الحصول على قائمة بمحتويات ملف الأرشيف.
  • v: عرض تقدّم عمل الأمر أثناء تنفيذه.
  • d: عرض الفروق بين ملف الأرشيف ونظام الملفات.

إنشاء ملف أرشيف

  • إنشاء ملف أرشيف لمجلّد:
tar cf directory.tar directory
  • إنشاء ملفّ أرشيف انطلاقا من مجموعة ملفات:
tar cf directory.tar file1 file2 file3
  • إنشاء ملف أرشيف مضغوط بخوارزمية bzip لملفات mp3 الموجودة في المجلّد الحالي:
tar -cvf mp3collection.tar ./*.mp3
  • إنشاء ملف أرشيف من المجلد /home/academy/ مع الحفاظ على الأذونات:
tar cvpf academy.tar /home/academy/
  • إنشاء أرشيف من المجلد etc/ مع استبعاد المجلد الفرعيّ apache2:
tar cvf etc_without_apache.tar exclude='/etc/apache2/'

ضغط الملفات

  • إنشاء ملف مضغوط بـbzip2 مع عرض تقدّم عمل الأمر في الطرفية:
tar cjvf directory.tar.bz2 directory/
  • إنشاء ملف مضغوط بـgzip مع عرض تقدّم عمل الأمر في الطرفية:
tar czvf directory.tar.gz directory/

عرض محتوى أرشيف

  • عرض محتوى ملف الأرشيف directory:
tar tvf directory.tar.bz2

...
bluewaters_1440x900.jpg
cloudyday_1440x900.jpg
fragile_1600x1200.jpg
coolemoticon_1440x900.jpg
cloudyday_1440x900.jpg
...

الاستخراج من ملفات الأرشيف

  • استخراج محتوى ملف أرشيف:
tar xvf directory.tar.bz2
  • استخراج ملف passwd فقط من أرشيف etc:
tar xvf etc.tar.bz2 passwd
  • استخراج مجلد postfix فقط من أرشيف etc:
tar xvf etc.tar.bz2 /etc/postfix/
  • استخراج ملفات php فقط من أرشيف htdocs:
tar xvf htdocs.tar.bz2 wildcards '*.php'

الفروق

  • الفرق بين ملف أرشيف ومجلّد (في حال عدم ذكر المجلد فالمقارنة تكون مع مجلد بنفس اسم الأرشيف في المجلد الحالي):
tar df directory.tar.bz2
  • البحث عن ملف في الأرشيف:
tar df directory.tar.bz2  directory/file1

ملحوظة: يجب في إصداراتٍ من tar تمرير خيار خوارزمية الضغط أثناء استخراج الملفات أو أثناء النظر في فروق ملفات أرشيف مضغوطة)؛ إلا أن الأمر اختياري في أغلب الإصدارات الأخيرة.

مثلا:

tar xjvf etc.tar.bz2 /etc/postfix/

بدلا من:

tar xvf etc.tar.bz2 /etc/postfix/

ترجمة -وبتصرّف- لمقال A tar Primer لصاحبه Daniel Miessler.





تفاعل الأعضاء


لا توجد أيّة تعليقات بعد



يجب أن تكون عضوًا لدينا لتتمكّن من التعليق

انشاء حساب جديد

يستغرق التسجيل بضع ثوان فقط


سجّل حسابًا جديدًا

تسجيل الدخول

تملك حسابا مسجّلا بالفعل؟


سجّل دخولك الآن