logo

أمر Tar في Linux/Unix مع أمثلة

الأمر tar قصير لـ أرشيف الشريط في لينكس. يستخدم هذا الأمر لإنشاء الأرشيف واستخراج ملفات الأرشيف. في لينكس ، وهو أحد الأوامر الأساسية التي تسهل وظيفة الأرشفة. يمكننا استخدام هذا الأمر لإنشاء ملفات أرشيف غير مضغوطة ومضغوطة وتعديلها وصيانتها أيضًا.

Tar عبارة عن أداة مساعدة من برامج الكمبيوتر لجمع عدة ملفات في ملف أرشيف واحد في الحوسبة. غالبًا ما تُعرف باسم tarball لأغراض النسخ الاحتياطي والتوزيع. تم الحصول على العنوان من 'أرشيف الشريط' لأنه تم تطويره بالفعل لتحديد البيانات على أجهزة الإدخال/الإخراج المتسلسلة التي لا تستخدم أيًا من أنظمة الملفات الخاصة بها. تتضمن مجموعات بيانات الأرشيف التي أنشأها tar العديد من معلمات نظام الملفات مثل تنظيم الدليل وإذن الوصول إلى الملف والملكية والطوابع الزمنية والاسم. لصالح باكس، تخلى POSIX عن القطران، ولا يزال القطران يشهد استخدامًا واسع النطاق.

أولاً، تم الإعلان عنه في الإصدار 7 Unix في يناير 1979، ليحل محل برنامج tp. لتخزين البيانات، تم توحيد بنية الملف في POSIX.1-1988 وما بعده POSIX.1-2001 وأصبح نمطًا تدعمه جميع أنظمة أرشفة الملفات الحديثة تقريبًا. تحتوي أنظمة التشغيل المشابهة ليونكس عمومًا على أدوات لدعم ملفات tar وأدوات مساعدة تستخدم لضغطها، مثل bzip2 وgzip.
منذ تحديث Microsoft بتاريخ 10 أبريل 2018، تم تضمين BSD-tar في Microsoft Windows، وهناك أداتان أو أكثر من أدوات الطرف الثالث لقراءة هذه الأنماط وكتابتها على Windows.

تنسيقات الملفات القطران

هناك العديد من تنسيقات ملفات tar المتاحة، بما في ذلك التنسيقات الحالية والتاريخية. تتم كتابة تنسيقين tar في POSIX: pax وustar.

رأس

يتضمن سجل رأس الملف البيانات التعريفية للملف. في سجل الرأس، يتم ترميز المعلومات بمعايير ASCII لضمان المرونة عبر بنيات متميزة باستخدام ترتيبات بايت متميزة. ومن ثم، إذا كان كل ملف عبارة عن ملف نصي ASCII في أرشيف ويحتوي على أسماء ASCII، فإن الأرشيف هو ملف نصي ASCII (يحتوي على عدة أحرف NUL).

تم ذكر العديد من الحقول في الجدول التالي، والتي تم تحديدها بواسطة تنسيق Unix tar الفعلي. يحتوي جدول نوع ملف الارتباط/المؤشر على بعض الامتدادات الحديثة. يمتلئ الحقل بمختلف وحدات البايت NUL إذا لم يكن مستخدمًا.

رأس القطران قبل POSIX.1-1988:

مجال حجم الحقل إزاحة المجال
اسم الملف 100 0
وضع الملف 8 100
معرف المستخدم الرقمي للمالك 8 108
معرف المستخدم الرقمي للمجموعة 8 116
حجم الملف بايت 12 124
آخر وقت تعديل في شكل وقت يونكس الرقمي 12 136
المجموع الاختباري لسجل الرأس 8 148
مؤشر الارتباط 1 156
اسم الملف المرتبط 100 157

تنسيق أوستارت

في تنسيق Ustar، يقوم كل برنامج tar الحديث تقريبًا بكتابة وقراءة الأرشيفات، والتي تم الإعلان عنها بواسطة معيار POSIX IEEE P1003.1 منذ عام 1988. وقد قدم حقول رأس إضافية. كانت برامج tar السابقة تتجنب المعلومات الإضافية، لكن البرامج الجديدة ستتحقق من وجود سلسلة 'Ustar' لتقرر ما إذا كان التنسيق الأحدث قيد الاستخدام.

الزوايا المجاورة
مجال حجم الحقل إزاحة المجال
العديد من الحقول، كما في الشكل السابق 156 0
اكتب العلم 1 156
حقل مماثل كما في التنسيق السابق 100 157
مؤشر Ustar 'ustar'، ثم NUL 6 257
نسخة '00' أوستار 2 263
اسم المستخدم للمالك 32 265
اسم المجموعة للمالك 32 297
الرقم الرئيسي للجهاز 8 329
عدد قليل من الجهاز 8 337
بادئة اسم الملف 155 3. 4. 5

POSIX.1-2001/باكس

اقترحت شركة Sun تقنية لإضافة امتدادات إلى تنسيق tar في عام 1997. وفي وقت لاحق، تمت الموافقة عليها لمعيار POSIX.1-2001. يسمى التنسيق تنسيق pax أو تنسيق tar الممتد. يتم تحديد بعض العلامات بواسطة معيار POSIX، بما في ذلك mtime، وatime، وlinkpath، وgname، وuname، والأحجام، وgid، وuid، وتعريف مجموعة الأحرف لأسماء المجموعة/المستخدمين وأسماء المسارات.

التطبيقات الرئيسية للقطران

يتم ذكر التطبيقات الرئيسية في ترتيب الأصل:

    القطران سولاريس يأتي كإعداد افتراضي في نظام التشغيل Solaris OS، استنادًا إلى Unix V7 الفعلي. جنو القطران هو الإعداد الافتراضي في كل توزيعات Linux تقريبًا. إنه يعتمد على تطبيق pdtar للملكية العامة والذي بدأ في عام 1987. يمكن للإصدارات الحديثة استخدام العديد من التنسيقات، مثل GNU، وpax، وv7، وustar. القطران FreeBSD أصبح tar افتراضيًا في كل أنظمة التشغيل المستندة إلى Berkeley Software Distribution تقريبًا، مثل Mac OS X. القطران شيلي تعتبر ذات أهمية تاريخية حيث أن بعض امتداداتها كانت مشهورة. تم إصداره لأول مرة في أبريل 1997. ملف تعريف بايثون يدعم اثنين أو أكثر من تنسيقات tar، مثل gnu وpax وustar؛ يمكنه قراءة تنسيقات SunOS tar الممتدة وV7 ولكن لا يمكنه جعلها؛ pax هو التنسيق الافتراضي لإنشاء الأرشيف. لقد كان متاحًا للمستخدمين منذ عام 2003.

بالإضافة إلى ذلك، يمكن لمعظم تطبيقات cpio وpax إنشاء وقراءة نوعين أو أكثر من أنواع ملفات tar.

بناء جملة الأمر tar:

 tar [options] [archive-file] [directory or file to be archived] 

الخيارات في الأمر tar

الخيارات المختلفة في الأمر tar مدرجة أدناه:

    -ج:يستخدم هذا الخيار لإنشاء الأرشيف.-F:يُستخدم هذا الخيار لإنشاء أرشيف مع اسم الملف المقدم.-س:يستخدم هذا الخيار لاستخراج الأرشيفات.-في:يمكن استخدامه لإضافة أرشيف إلى ملف الأرشيف الموجود.-ر:يتم استخدامه لعرض أو إدراج الملفات داخل الملف المؤرشف.-أ:يستخدم هذا الخيار لتسلسل ملفات الأرشيف.-في:يمكن استخدامه لإظهار معلومات مطولة.-ي:يتم استخدامه لتصفية ملفات tar الأرشيفية بمساعدة tbzip.-مع:إنه ملف مضغوط ويبلغ الأمر tar الذي يقوم بإنشاء ملف tar بمساعدة gzip.-ص:يُستخدم هذا الخيار لتحديث وإضافة دليل أو ملف في ملف .tar موجود.-في:يستخدم هذا الخيار للتحقق من ملف الأرشيف.

مقدمة إلى ملف الأرشيف

يمكن تعريف ملف الأرشيف على أنه ملف يحتوي على ملفات متعددة ذات بيانات تعريفية. تُستخدم هذه الملفات لتجميع أكثر من ملف بيانات معًا في ملف فردي لسهولة التخزين والنقل. يمكن استخدامه أيضًا لضغط الملفات لاستهلاك مساحة تخزين أقل.

أمثلة على أمر القطران

فيما يلي بعض الأمثلة المهمة المستخدمة على نطاق واسع في أمر tar:

زوج ج ++

1. إنشاء أرشيف tar غير مضغوط باستخدام خيار -cvf

يؤدي هذا الخيار إلى إنشاء ملف tar يُعرف باسم file.tar . إنه أرشيف كل ملف .txt بداخله com.mydir الدليل.

الأمر كما يلي:

 $ tar cvf file.tar *.txt 

أمر Tar في Linux

2. استخراج الملفات من الأرشيف باستخدام خيار -xvf

يمكن لهذا الخيار استخراج الملفات من خلال الأرشيف.

الأمر كما يلي:

 $ tar xvf file.tar 

أمر Tar في Linux

3. ضغط gzip على أرشيف القطران مع خيار -z

يؤدي هذا الخيار إلى إنشاء ملف tar يُعرف باسم file.tar.gz. إنه أرشيف كل ملف .txt.

الأمر كما يلي:

 $ tar cvzf file.tar.gz *.txt 

أمر Tar في Linux

4. استخراج أرشيف gzip tar باستخدام خيار -xvzf

يمكن لهذا الخيار استخراج الملفات من خلال الملفات المؤرشفة file.tar.gz tar.

الأمر كما يلي:

 $ tar xvzf file.tar.gz 

أمر Tar في Linux

5. عمل ملفات tar مضغوطة باستخدام الخيار -j

سيساعدنا هذا الخيار في إنشاء ملفات الأرشيف وضغطها. يستغرق كل من فك الضغط والضغط وقتًا أطول مقارنةً بـ gzip.

الأمر كما يلي:

 $ tar cvfj file.tar.tbz hello1.txt 

أمر Tar في Linux

6. Untar دليل أو ملف محدد واحد في Linux

يُستخدم هذا الخيار لإلغاء تحديد أي ملف في دليلنا الحالي أو داخل الدليل المحدد باستخدام خيار -C.

الأمر كما يلي:

 $ tar -xvf file.tar -C file's path in the directory 

أمر Tar في Linux

أو،

جافا 8
 $ tar -xvf file.tar 

أمر Tar في Linux

7. فك ملفات .tar.tbz و.tar.gz و.tar المتعددة في Linux

هذا الخيار سوف يساعدنا الانتشار أو قم باستخراج أكثر من ملف من tar.bz2 وtar.gz وملف أرشيف tar.

مثال هذا الخيار هو كما يلي:

 $ tar -jxvf file.tar.tbz 'hello1.txt' 

أمر Tar في Linux

أو،

 $ tar -zxvf file.tar.gz 'hello1.txt' 'hello2.txt' 

أمر Tar في Linux

أو،

 $ tar -xvf file.tar 'hello1.txt' 'hello2.txt' 

أمر Tar في Linux

8. تحقق من حجم ملفات tar.tbz وtar.gz وtar الموجودة

سيساعدنا الأمر في إظهار حجم ملف الأرشيف بالكيلوبايت (KB) المذكور أعلاه.

الأمر كما يلي:

 $ tar -czf - file2.tar.tbz | wc -c 

أو،

 $ tar -czf - file1.tar.gz | wc -c 

أو،

 $ tar -czf - file.tar | wc -c 

أمر Tar في Linux

9. قم بتحديث ملف القطران الموجود

في Linux، يكون الأمر الخاص بتحديث ملف tar الموجود كما يلي:

 $ tar rvf file.tar *.txt 

10. قائمة المحتوى ووصف ملف tar مع خيار tf

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

الأمر كما يلي:

 $ tar tf file.tar 

أمر Tar في Linux

11. اعرض الأرشيف باستخدام خيار -tvf

في Linux، يمكننا استخدام الخيار -tvf لعرض الأرشيف.

الأمر كما يلي:

 $ tar -tvf file.tar 

أمر Tar في Linux

12. قم بتمرير اسم الملف كوسيطة للعثور على ملف tar

يمكن لهذا الخيار عرض الملفات المؤرشفة بمعلوماتها.

الأمر كما يلي:

 $ tar tvf file.tar filename 

أمر Tar في Linux

13. استخدام الأنبوب لرمي أمر grep للبحث عما نبحث عنه

سيساعدنا هذا الخيار في إدراج الصورة أو النص المذكور فقط سيطرة من خلال الملفات المؤرشفة.

الأمر كما يلي:

 $ tar tvf file.tar | grep 'filename.file' 

أو،

 $ tar tvf file.tar | grep 'text to search' 

أمر Tar في Linux

مقدمة إلى أحرف البدل

وبدلاً من ذلك، تتم الإشارة إلى أحرف البدل على أنها حرف بدل أو حرف بدل في Linux. إنه رمز يستخدم لتمثيل أو استبدال أحرف متعددة.

عادةً ما تكون أحرف البدل إما علامة استفهام (؟) توضح حرفًا فرديًا أو علامة النجمة (*) توضح عدة أحرف.

مثال-

14. ابحث عن صورة بتنسيق webp

سيساعدنا ذلك في استخراج الملفات فقط مع امتداد .webp من أرشيف file.tar. يُعلم خيار -wildcards tar بتفسير أحرف البدل في اسم الملف المراد استخراجه.

10 من 40

يتم تضمين اسم الملف (*.webp) داخل علامتي الاقتباس المفردتين لحماية حرف البدل (*) من خلال توسيعه بشكل غير صحيح بواسطة أي غلاف.

الأمر كما يلي:

 $ tar tvf file.tar --wildcards '*.webp' 

أمر Tar في Linux

ملاحظة: في الأمر أعلاه، يتم تطبيق الرمز '*' في موضع اسم الملف لأخذ كل ملف متوفر في هذا الدليل المحدد.

15. حذف الملفات من أرشيف القطران

يمكننا استخدام خيار --delete لإزالة الملفات وأرشيف القطران.

الأمر كما يلي:

 $ tar --delete -f archive.tar file_name 

مثال:

 tar -delete -f file.tar hello1.txt 

انتاج:

أمر Tar في Linux

hello1.txt تمت إزالة الملف من أرشيف file.tar:

أمر Tar في Linux