كيفية ضغط واستخراج الملفات باستخدام أمر tar على نظام Linux
نشرت: 2022-07-23غالبًا ما يُستخدم الأمر tar على نظام Linux لإنشاء ملفات أرشيف .tar.gz أو .tgz ، وتسمى أيضًا "كرات القطر". يحتوي هذا الأمر على عدد كبير من الخيارات ، لكنك تحتاج فقط إلى تذكر بعض الأحرف لإنشاء أرشيفات بسرعة باستخدام القطران. يمكن للأمر tar استخراج الأرشيفات الناتجة أيضًا.
الأمر GNU tar المتضمن مع توزيعات Linux يحتوي على ضغط متكامل. يمكنه إنشاء أرشيف .tar ثم ضغطه بضغط gzip أو bzip2 في أمر واحد. هذا هو السبب في أن الملف الناتج هو ملف .tar.gz أو ملف .tar.bz2.
التحديث ، 7/18/22: لقد راجعنا هذه المقالة للتأكد من دقتها ويمكننا تأكيد أنها لا تزال تعمل على أحدث إصدار من Ubuntu وتوزيعات Linux الأخرى.
ضغط دليل كامل أو ملف واحد
استخدم الأمر التالي لضغط دليل كامل أو ملف واحد على Linux. سيقوم أيضًا بضغط كل دليل آخر داخل الدليل الذي تحدده - بمعنى آخر ، يعمل بشكل متكرر.
tar -czvf name-of-archive.tar.gz / path / to / directory-or-file
إليك ما تعنيه هذه المفاتيح في الواقع:
- -ج : إنشاء أرشيف.
- -z: ضغط الأرشيف باستخدام g z ip.
- -v: عرض التقدم في الجهاز أثناء إنشاء الأرشيف ، والمعروف أيضًا باسم وضع " v erbose". دائمًا ما يكون حرف v اختياريًا في هذه الأوامر ، ولكنه مفيد.
- -f: يسمح لك بتحديد اسم الملف للأرشيف .
لنفترض أن لديك دليلًا باسم "stuff" في الدليل الحالي وتريد حفظه في ملف باسم archive.tar.gz. ستقوم بتشغيل الأمر التالي:
tar -czvf archive.tar.gz الاشياء
أو لنفترض أن هناك دليلًا على / usr / local / شيء ما على النظام الحالي وتريد ضغطه إلى ملف باسم archive.tar.gz. ستقوم بتشغيل الأمر التالي:
tar -czvf archive.tar.gz / usr / local / شيء
ضغط أدلة أو ملفات متعددة مرة واحدة
ذات صلة: كيفية إدارة الملفات من Linux Terminal: 11 أمرًا تحتاج إلى معرفتها
بينما يتم استخدام tar بشكل متكرر لضغط دليل واحد ، يمكنك أيضًا استخدامه لضغط أدلة متعددة أو ملفات فردية متعددة أو كليهما. ما عليك سوى تقديم قائمة بالملفات أو الدلائل بدلاً من قائمة واحدة. على سبيل المثال ، لنفترض أنك تريد ضغط دليل / home / ubuntu / Downloads ، ودليل / usr / local / stuff ، وملف /home/ubuntu/Documents/notes.txt. كنت تقوم فقط بتشغيل الأمر التالي:
tar -czvf archive.tar.gz / home / ubuntu / Downloads / usr / local / stuff /home/ubuntu/Documents/notes.txt
ما عليك سوى سرد العديد من الدلائل أو الملفات التي تريد نسخها احتياطيًا.
استبعاد الدلائل والملفات
في بعض الحالات ، قد ترغب في ضغط دليل بأكمله ، لكن لا تقم بتضمين ملفات وأدلة معينة. يمكنك القيام بذلك عن طريق إلحاق مفتاح --exclude
switch لكل دليل أو ملف تريد استبعاده.
على سبيل المثال ، لنفترض أنك تريد ضغط / home / ubuntu ، لكنك لا تريد ضغط الدلائل / home / ubuntu / Downloads و /home/ubuntu/.cache. إليك كيف تفعل ذلك:
tar -czvf archive.tar.gz / home / ubuntu --exclude = / home / ubuntu / Downloads --exclude = / home / ubuntu / .cache
مفتاح --exclude
- الاستبعاد قوي جدًا. لا يأخذ أسماء الدلائل والملفات - في الواقع يقبل الأنماط. هناك الكثير الذي يمكنك فعله به. على سبيل المثال ، يمكنك أرشفة دليل كامل واستبعاد جميع ملفات .mp4 باستخدام الأمر التالي:
tar -czvf archive.tar.gz / home / ubuntu --exclude = *. mp4
استخدم ضغط bzip2 بدلاً من ذلك
بينما يتم استخدام ضغط gzip بشكل متكرر لإنشاء ملفات .tar.gz أو .tgz ، يدعم tar أيضًا ضغط bzip2. يتيح لك هذا إنشاء ملفات مضغوطة باستخدام bzip2 ، والتي غالبًا ما تُسمى ملفات .tar.bz2 أو .tar.bz أو .tbz. للقيام بذلك ، ما عليك سوى استبدال -z لـ gzip في الأوامر هنا بـ a -j لـ bzip2.
يعد Gzip أسرع ، لكنه بشكل عام يتم ضغطه بشكل أقل قليلاً ، لذلك تحصل على ملف أكبر إلى حد ما. يكون Bzip2 أبطأ ، لكنه ينضغط أكثر قليلاً ، بحيث تحصل على ملف أصغر نوعًا ما. Gzip هو أيضًا أكثر شيوعًا ، مع بعض أنظمة Linux التي تم تجريدها بما في ذلك دعم gzip افتراضيًا ، ولكن ليس دعم bzip2. بشكل عام ، على الرغم من ذلك ، فإن gzip و bzip2 هما نفس الشيء تقريبًا ، وسيعمل كلاهما بالمثل.
على سبيل المثال ، بدلاً من المثال الأول الذي قدمناه لضغط دليل الأشياء ، يمكنك تشغيل الأمر التالي:
tar -cjvf archive.tar.bz2 الاشياء
استخراج أرشيف
بمجرد أن يكون لديك أرشيف ، يمكنك استخراجه باستخدام الأمر tar. سيقوم الأمر التالي باستخراج محتويات archive.tar.gz إلى الدليل الحالي.
tar -xzvf archive.tar.gz
إنه نفس أمر إنشاء الأرشيف الذي استخدمناه أعلاه ، باستثناء أن المفتاح -x
يستبدل المفتاح -c
. يحدد هذا أنك تريد إنشاء أرشيف بدلاً من إنشاء واحد.
قد ترغب في استخراج محتويات الأرشيف إلى دليل محدد. يمكنك القيام بذلك عن طريق إلحاق مفتاح التبديل -C
بنهاية الأمر. على سبيل المثال ، سيقوم الأمر التالي باستخراج محتويات ملف archive.tar.gz إلى الدليل / tmp.
tar -xzvf archive.tar.gz -C / tmp
إذا كان الملف عبارة عن ملف مضغوط بتنسيق bzip2 ، فاستبدل حرف "z" في الأوامر أعلاه بحرف "j".
هذا هو أبسط استخدام ممكن لأمر tar. يتضمن الأمر عددًا كبيرًا من الخيارات الإضافية ، لذلك لا يمكننا سردها جميعًا هنا. للمزيد من المعلومات. قم بتشغيل الأمر info tar في shell لعرض صفحة المعلومات التفصيلية الخاصة بأمر tar. اضغط على مفتاح q لإنهاء صفحة المعلومات عند الانتهاء. يمكنك أيضًا قراءة دليل tar على الإنترنت.
إذا كنت تستخدم سطح مكتب Linux رسوميًا ، فيمكنك أيضًا استخدام الأداة المساعدة لضغط الملفات أو مدير الملفات المضمن في سطح المكتب لإنشاء ملفات .tar أو استخراجها. في نظام التشغيل Windows ، يمكنك استخراج أرشيفات بتنسيق .tar وإنشاؤها باستخدام الأداة المساعدة 7-Zip المجانية.
أوامر لينكس | ||
الملفات | tar · pv · cat · tac · chmod · grep · diff _ _ _ _ _ _ _ _ _ _ _ · ذيل · ستات · ls · fstab · صدى · أقل · chgrp · chown · rev · look · strings · type · rename · zip · unzip · mount · umount · تثبيت · fdisk · mkfs · rm · rmdir · rsync · df · gpg · vi · nano · mkdir · du · ln · patch · تحويل · rclone · shred · srm | |
العمليات | الاسم المستعار · شاشة · أعلى · لطيف · رينييس · تقدم · ستريس · systemd · tmux · chsh · تاريخ · في · دفعة · مجانية · أي · dmesg · chfn · usermod · ps · chroot · xargs · tty · pinky · lsof · vmstat · timeout · wall · نعم · قتل · نوم · sudo · su · time · groupadd · usermod · groups · lshw · shutdown · reboot · halt · poweroff · passwd · lscpu · crontab · date · bg · fg | |
الشبكات | netstat · ping · traceroute · ip · ss · whois · fail2ban · bmon · حفر · إصبع · nmap · ftp · curl · wget · who · who · w · iptables · ssh-keygen · ufw |
ذات صلة: أفضل أجهزة كمبيوتر Linux المحمولة للمطورين والمتحمسين