كتيبات سطر الأوامر

Man » دليل tar عبر الإنترنت - وثائق تفصيلية عبر الإنترنت لصفحة دليل tar

🌍
tar - أداة أرشفة

ملخص

الاستخدام التقليدي

tar {A|c|d|r|t|u|x}[GnSkUWOmpsMBiajJzZhPlRvwo] [ARG...]

استخدام نمط يونكس

tar -A [الخيارات] -f أرشيف أرشيف...

tar -c [-f أرشيف] [الخيارات] [ملف...]

tar -d [-f أرشيف] [الخيارات] [ملف...]

tar -r [-f أرشيف] [الخيارات] [ملف...]

tar -t [-f أرشيف] [الخيارات] [عنصر...]

tar -u [-f أرشيف] [الخيارات] [ملف...]

tar -x [-f أرشيف] [الخيارات] [عنصر...]

استخدام نمط جنو

tar {--catenate|--concatenate} [الخيارات] --file أرشيف أرشيف...

tar --create [--file أرشيف] [الخيارات] [ملف...]

tar {--diff|--compare} [--file أرشيف] [الخيارات] [ملف...]

tar --delete [--file أرشيف] [الخيارات] [عنصر...]

tar --append [--file أرشيف] [الخيارات] [ملف...]

tar --list [--file أرشيف] [الخيارات] [عنصر...]

tar --test-label [--file أرشيف] [الخيارات] [تسمية...]

tar --update [--file أرشيف] [الخيارات] [ملف...]

tar {--extract|--get} [--file أرشيف] [الخيارات] [عنصر...]

ملاحظة

هذه الصفحة هي وصف موجز لـ GNU tar. للحصول على مناقشة مفصلة، بما في ذلك الأمثلة وتوصيات الاستخدام، راجع دليل GNU Tar المتوفر بتنسيق texinfo. إذا كان قارئ info وتوثيق tar مثبتين بشكل صحيح على نظامك، فإن الأمر

info tar

يجب أن يمنحك الوصول إلى الدليل الكامل.

يمكنك أيضًا عرض الدليل باستخدام وضع info في emacs(1)، أو العثور عليه بتنسيقات مختلفة عبر الإنترنت على

https://www.gnu.org/software/tar/manual

في حالة حدوث أي تناقضات بين هذه الصفحة ودليل GNU Tar، يجب اعتبار الأخير هو المصدر الموثوق.

وصف

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

أنماط الخيارات

يمكن إعطاء الخيارات لـ GNU tar بثلاثة أنماط مختلفة. في النمط التقليدي، الوسيطة الأولى عبارة عن مجموعة من أحرف الخيارات وجميع الوسيطات اللاحقة توفر وسيطات لتلك الخيارات التي تتطلبها. تتم قراءة الوسيطات بنفس ترتيب أحرف الخيارات. أي كلمات في سطر الأوامر تظل بعد معالجة جميع الخيارات يتم التعامل معها على أنها وسيطات غير خيارات: أسماء ملفات أو أعضاء الأرشيف.

على سبيل المثال، يتطلب خيار c إنشاء الأرشيف، ويطلب خيار v عملية مطولة، وخيار f يأخذ وسيطة تحدد اسم الأرشيف الذي سيتم العمل عليه.
الأمر التالي، المكتوب بالنمط التقليدي، يوجه tar لتخزين جميع الملفات من
الدليل /etc في ملف الأرشيف etc.tar، مع سرد الملفات التي يتم أرشفتها بشكل مطول:

tar cfv etc.tar /etc

في نظام UNIX أو نمط الخيارات القصيرة، يتم وضع بادئة لكل حرف من أحرف الخيارات بشرطة واحدة، كما هو الحال في أدوات سطر الأوامر الأخرى. إذا كانت الخيار يتطلب وسيطة، فإن الوسيطة تأتي بعده، إما ككلمة منفصلة في سطر الأوامر، أو مباشرة بعد الخيار. ومع ذلك، إذا كانت الخيار تتطلب وسيطة اختيارية، فيجب أن تأتي الوسيطة بعد حرف الخيار دون أي مسافة بينهما، كما في -g/tmp/snar.db.

يمكن تجميع أي عدد من الخيارات التي لا تتطلب وسيطات معًا بعد شرطة واحدة، على سبيل المثال -vkp. يمكن للخيار الذي يتطلب وسيطة (سواء كانت إلزامية أو اختيارية) أن يظهر في نهاية هذه المجموعة، على سبيل المثال -vkpf a.tar.

يمكن كتابة الأمر المثال أعلاه بأسلوب الخيارات القصيرة على النحو التالي:

tar -cvf etc.tar /etc
أو
tar -c -v -f etc.tar /etc

في نمط الخيارات الطويلة من GNU، يبدأ كل خيار بشرطتين وله اسم ذو معنى، يتكون من أحرف صغيرة وشرطات. عند استخدامه، يمكن اختصار الخيار الطويل إلى أحرفه الأولى، شريطة ألا يؤدي ذلك إلى حدوث لبس. يتم توفير الوسائط الخاصة بالخيارات الطويلة إما ككلمة منفصلة في سطر الأوامر، مباشرة بعد الخيار، أو مفصولة عن الخيار بعلامة يساوي دون أي مسافة بينهما. يجب دائمًا استخدام الطريقة الأخيرة للوسائط الاختيارية.

فيما يلي عدة طرق لكتابة الأمر المثال بهذا النمط:

tar --create --file etc.tar --verbose /etc
أو (باختصار بعض الخيارات):
tar --cre --file=etc.tar --verb /etc

يمكن خلط الخيارات في جميع الأنماط الثلاثة، على الرغم من أن القيام بذلك مع الخيارات القديمة لا يُشجع عليه.

وضع التشغيل

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

-A، --catenate، --concatenate

إلحاق الأرشيفات بنهاية أرشيف آخر. تُعامل الوسائط على أنها أسماء الأرشيفات المراد إلحاقها. يجب أن تكون جميع الأرشيفات بنفس تنسيق الأرشيف الذي يتم إلحاقها به، وإلا فقد يكون الأرشيف الناتج غير قابل للاستخدام مع تطبيقات tar غير GNU. لاحظ أيضًا أنه عند إعطاء أكثر من أرشيف واحد، ستكون العناصر الموجودة في الأرشيفات الأخرى متاحة في الأرشيف الناتج فقط عند استخدام الخيار -i (--ignore-zeros).

لا يمكن دمج الأرشيفات المضغوطة.

-c، --create

إنشاء أرشيف جديد. توفر الوسائط أسماء الملفات المراد أرشفتها. يتم أرشفتها الدلائل بشكل متكرر، ما لم يتم إعطاء الخيار --no-recursion.

-d، --diff، --compare

العثور على الاختلافات بين الأرشيف ونظام الملفات. الوسائط اختيارية وتحدد أعضاء الأرشيف المراد مقارنتهم. إذا لم يتم إعطاؤها، فسيتم افتراض الدليل الحالي.


--delete

احذف من الأرشيف. تحدد الوسائط أسماء أعضاء الأرشيف المراد إزالتها. يجب تقديم وسيطة واحدة على الأقل.

هذا الخيار لا يعمل على الأرشيفات المضغوطة. لا يوجد خيار مختصر مكافئ.

-r, --append

أضف ملفات إلى نهاية الأرشيف. الوسائط لها نفس معنى الخيار -c (--create).

-t, --list

اعرض محتويات الأرشيف. الوسائط اختيارية. عند تحديدها، تحدد أسماء الأعضاء المراد عرضها.

--test-label

اختبر تسمية وحدة التخزين الخاصة بالأرشيف واخرج. عند استخدامه بدون وسائط، فإنه يعرض تسمية وحدة التخزين (إن وجدت) ويخرج بحالة 0. عند تحديد وسيطة واحدة أو أكثر، يقارن tar تسمية وحدة التخزين بكل وسيطة. يخرج بالرمز 0 إذا تم العثور على تطابق، وبالرمز 1 بخلاف ذلك. لا يتم عرض أي إخراج، إلا إذا تم استخدامه مع الخيار -v (--verbose).

لا يوجد خيار مختصر مكافئ لهذا الخيار.

-u, --update

أضف الملفات التي تكون أحدث من النسخة المقابلة في الأرشيف. الوسائط لها نفس معنى الخيارات -c و -r. لاحظ أن الملفات الأحدث لا تحل محل النسخ القديمة في الأرشيف، ولكن يتم إلحاقها بدلاً من ذلك في نهاية الأرشيف. يمكن أن يحتوي الأرشيف الناتج على عدة أعضاء بنفس الاسم، تتوافق مع إصدارات مختلفة من نفس الملف.

-x, --extract, --get

استخرج الملفات من الأرشيف. الوسائط اختيارية. عند تحديدها، تحدد أسماء أعضاء الأرشيف المراد استخراجها.

--show-defaults

اعرض القيم الافتراضية المضمنة للخيارات المختلفة لـ tar واخرج.

-?, --help

اعرض ملخصًا موجزًا للخيارات واخرج.

--usage

اعرض قائمة بالخيارات المتاحة واخرج.

--version

اطبع إصدار البرنامج ومعلومات حقوق النشر واخرج.

الخيارات

معدِّلات التشغيل

--check-device

تحقق من أرقام الأجهزة عند إنشاء الأرشيفات التزايدية (افتراضي).

-g, --listed-incremental=FILE

تعامل مع النسخ الاحتياطية التزايدية بتنسيق GNU الجديد. FILE هو اسم ملف لقطة، حيث يخزن tar معلومات إضافية تُستخدم لتحديد الملفات التي تغيرت منذ النسخة الاحتياطية التزايدية السابقة، وبالتالي يجب إضافتها مرة أخرى. إذا لم يكن FILE موجودًا عند إنشاء أرشيف، فسيتم إنشاؤه وسيتم إضافة جميع الملفات إلى الأرشيف الناتج (النسخة الاحتياطية من المستوى 0). لإنشاء أرشيفات تزايدية من المستوى N غير الصفري، تحتاج إلى نسخة من ملف اللقطة الذي تم إنشاؤه للمستوى N-1، واستخدامه كـ FILE.

عند سرد أو استخراج، لا يتم فحص المحتوى الفعلي لـ FILE، بل يتم طلبه فقط بسبب المتطلبات النحوية. لذلك، من الشائع استخدام /dev/null مكانه.

--hole-detection=METHOD

استخدم METHOD للكشف عن الفراغات في الملفات المتباعدة. هذا الخيار يعني --sparse. القيم الصالحة لـ METHOD هي seek و raw. القيمة الافتراضية هي seek مع الرجوع إلى raw عندما لا يكون ذلك ممكنًا.

-G, --incremental

تعامل مع النسخ الاحتياطية التزايدية بتنسيق GNU القديم.


--ignore-failed-read
لا تخرج بقيمة غير صفرية عند وجود ملفات غير قابلة للقراءة.

--level=NUMBER
عيّن مستوى التفريغ لأرشيف تدريجي مُنشأ. حاليًا، يكون `--level=0` هو الخيار الوحيد ذو المعنى: فهو يوجه `tar` لقطع ملف اللقطة قبل التفريغ، وبالتالي يجبر على إجراء تفريغ من المستوى 0.

-n, --seek
افترض أن الأرشيف قابل للبحث. عادةً ما يحدد `tar` تلقائيًا ما إذا كان الأرشيف قابلاً للبحث أم لا. يهدف هذا الخيار إلى استخدامه في الحالات التي يفشل فيها هذا التعرف. يسري فقط إذا تم فتح الأرشيف للقراءة (على سبيل المثال، باستخدام خياري `--list` أو `--extract`).

--no-check-device
لا تتحقق من أرقام الأجهزة عند إنشاء أرشيفات تدريجية.

--no-seek
افترض أن الأرشيف غير قابل للبحث.

--occurrence[=N]
قم بمعالجة التكرار رقم N فقط لكل ملف في الأرشيف. هذا الخيار صالح فقط عند استخدامه مع أحد الأوامر الفرعية التالية: `--delete` أو `--diff` أو `--extract` أو `--list` وعند إعطاء قائمة بالملفات إما في سطر الأوامر أو عبر الخيار `-T`. القيمة الافتراضية لـ N هي 1.

--restrict
عطّل استخدام بعض الخيارات التي قد تكون ضارة.

--sparse-version=MAJOR[.MINOR]
عيّن إصدار تنسيق البيانات المتفرقة المراد استخدامه. يعني هذا الخيار `--sparse`. القيم الصالحة للحجة هي 0.0 و 0.1 و 1.0. للحصول على مناقشة مفصلة لتنسيقات البيانات المتفرقة، راجع دليل GNU Tar، الملحق D، "تنسيقات البيانات المتفرقة". باستخدام قارئ المعلومات، يمكن الوصول إليه عن طريق تشغيل الأمر التالي: `info tar 'Sparse Formats'`.

-S, --sparse
تعامل مع الملفات المتفرقة بكفاءة. قد تحتوي بعض الملفات في نظام الملفات على أجزاء لم يتم كتابتها مطلقًا (غالبًا ما تكون هذه ملفات قاعدة بيانات تم إنشاؤها بواسطة أنظمة مثل DBM). عند إعطاء هذا الخيار، يحاول `tar` تحديد ما إذا كان الملف متفرقًا قبل أرشفته، وإذا كان الأمر كذلك، فإنه يقلل من حجم الأرشيف الناتج عن طريق عدم تفريغ الأجزاء الفارغة من الملف.

التحكم في الكتابة فوق

تتحكم هذه الخيارات في إجراءات tar عند استخراج ملف فوق نسخة موجودة على القرص.

-k, --keep-old-files
لا تستبدل الملفات الموجودة عند الاستخراج.

--keep-newer-files
لا تستبدل الملفات الموجودة التي تكون أحدث من نسخها في الأرشيف.

--keep-directory-symlink
لا تستبدل الروابط الرمزية الموجودة للدلائل عند الاستخراج.

--no-overwrite-dir
حافظ على بيانات التعريف للدلائل الموجودة.

--one-top-level[=DIR]
استخرج جميع الملفات إلى الدليل DIR، أو، إذا تم استخدامه بدون وسيطة، فإنه يستخرج إلى دليل فرعي يسمى بالاسم الأساسي للأرشيف (ناقصًا لاحقات الضغط القياسية التي يمكن التعرف عليها بواسطة `--auto-compress`).

--overwrite
استبدل الملفات الموجودة عند الاستخراج.

--overwrite-dir
استبدل بيانات التعريف للدلائل الموجودة عند الاستخراج (افتراضيًا).

--recursive-unlink
قم بإزالة جميع الملفات الموجودة في الدليل بشكل متكرر قبل استخراجها.

--remove-files
قم بإزالة الملفات من القرص بعد إضافتها إلى الأرشيف.

--skip-old-files
لا تستبدل الملفات الموجودة عند الاستخراج، وتجاوزها بصمت.

-U, --unlink-first
قم بإزالة كل ملف قبل استخراجه.

-W، --verify

تحقق من الأرشيف بعد كتابته.

تحديد تدفق الإخراج

--ignore-command-error

تجاهل رموز خروج العمليات الفرعية.

--no-ignore-command-error

اعتبر رموز الخروج غير الصفرية للعمليات الفرعية كأخطاء (افتراضي).

-O، --to-stdout

استخرج الملفات إلى الإخراج القياسي.

--to-command=COMMAND

قم بتمرير الملفات المستخرجة إلى الأمر COMMAND. الوسيطة هي اسم مسار برنامج خارجي، مع وسائط سطر الأوامر اختيارية. سيتم استدعاء البرنامج وسيتم توفير محتويات الملف الذي يتم استخراجه إلى الإدخال القياسي الخاص به. سيتم توفير بيانات إضافية عبر متغيرات البيئة التالية:

TAR_FILETYPE

نوع الملف. إنه حرف واحد بمعاني التالية:

f ملف عادي
d دليل
l رابط رمزي
h رابط ثابت
b جهاز كتلة
c جهاز حرفي

حاليًا، يتم دعم الملفات العادية فقط.

TAR_MODE

وضع الملف، وهو رقم ثماني.

TAR_FILENAME

اسم الملف.

TAR_REALNAME

اسم الملف كما هو مخزن في الأرشيف.

TAR_UNAME

اسم مالك الملف.

TAR_GNAME

اسم مجموعة مالك الملف.

TAR_ATIME

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

TAR_MTIME

وقت آخر تعديل.

TAR_CTIME

وقت آخر تغيير للحالة.

TAR_SIZE

حجم الملف.

TAR_UID

معرف المستخدم الخاص بمالك الملف.

TAR_GID

معرف المجموعة الخاص بمالك الملف.

بالإضافة إلى ذلك، تحتوي المتغيرات التالية على معلومات حول وضع تشغيل tar والأرشيف الذي تتم معالجته:

TAR_VERSION

رقم إصدار GNU tar.

TAR_ARCHIVE

اسم الأرشيف الذي يعالجه tar.

TAR_BLOCKING_FACTOR

عامل الحظر الحالي، أي عدد الكتل التي يبلغ حجمها 512 بايت في سجل.

TAR_VOLUME

الرقم التسلسلي للوحدة التي يعالجها tar (يتم تعيينه إذا كان يتم قراءة أرشيف متعدد الوحدات).

TAR_FORMAT

تنسيق الأرشيف الذي تتم معالجته. واحد من: gnu، oldgnu، posix، ustar، v7.

TAR_SUBCOMMAND

خيار قصير (مع شرطة بادئة) يصف العملية التي يقوم بها tar.

التعامل مع سمات الملف

--atime-preserve[=METHOD]

حافظ على أوقات الوصول للملفات التي تم تفريغها، إما عن طريق استعادة الأوقات بعد القراءة (METHOD=replace، هذا هو الافتراضي) أو عن طريق عدم تعيين الأوقات في المقام الأول (METHOD=system).

--delay-directory-restore

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

--group=NAME[:GID]

فرض تعيين NAME كمجموعة للملفات المضافة. إذا لم يتم توفير GID، يمكن أن يكون NAME إما اسم مستخدم أو معرف مجموعة رقمي. في هذه الحالة، سيتم استنتاج الجزء المفقود (GID أو الاسم) من قاعدة بيانات المجموعة الحالية للمضيف.

عند استخدامه مع --group-map=FILE، فإنه يؤثر فقط على تلك الملفات التي لا يتم سرد مجموعة مالكها في FILE.

--group-map=FILE

اقرأ خريطة ترجمة المجموعة من FILE. يتم تجاهل الأسطر الفارغة. يتم تقديم التعليقات بعلامة # وتمتد إلى نهاية السطر. يجب أن يتكون كل سطر غير فارغ في FILE من حقلين، مفصولين بأي كمية من المسافات:


OLDGRP NEWGRP[:NEWGID]

OLDGRP إما اسم مجموعة صالح أو GID مع البادئة +. ما لم يتم توفير NEWGID، يجب أن يكون NEWGRP أيضًا إما اسم مجموعة صالح أو +GID. وإلا، لا يلزم أن تكون كل من NEWGRP و NEWGID مدرجة في قاعدة بيانات مجموعة النظام.

نتيجة لذلك، سيتم تخزين كل ملف إدخال يمتلكه مجموعة OLDGRP في الأرشيف مع مجموعة مالك NEWGRP و GID هو NEWGID.

--mode=CHANGES
فرض وضع رمزي CHANGES للتغييرات في الملفات المضافة.

--mtime=DATE-OR-FILE
تعيين mtime للملفات المضافة. DATE-OR-FILE هو إما تاريخ/وقت بتنسيق شبه عشوائي، أو اسم ملف موجود. في الحالة الأخيرة، سيتم استخدام mtime لهذا الملف.

-m، --touch
عدم استخراج وقت تعديل الملف.

--no-delay-directory-restore
إلغاء تأثير خيار --delay-directory-restore السابق.

--no-same-owner
استخراج الملفات كالمستخدم الحالي (الافتراضي للمستخدمين العاديين).

--no-same-permissions
تطبيق umask للمستخدم عند استخراج الأذونات من الأرشيف (الافتراضي للمستخدمين العاديين).

--numeric-owner
استخدام الأرقام دائمًا لأسماء المستخدمين/المجموعات.

--owner=NAME[:UID]
فرض NAME كمالك للملفات المضافة. إذا لم يتم توفير UID، يمكن أن يكون NAME إما اسم مستخدم صالح أو UID رقمي. في هذه الحالة، سيتم استنتاج الجزء المفقود (UID أو الاسم) من قاعدة بيانات المستخدمين الحالية على الجهاز.

عند استخدامه مع --owner-map=FILE، فإنه يؤثر فقط على تلك الملفات التي ليس مالكها مدرجًا في FILE.

--owner-map=FILE
قراءة خريطة ترجمة المالك من FILE. يتم تجاهل الأسطر الفارغة. يتم تقديم التعليقات بعلامة # وتمتد حتى نهاية السطر. يحدد كل سطر غير فارغ في FILE ترجمة لـ UID واحد. يجب أن يتكون من حقلين، مفصولين بأي كمية من المسافات:

OLDUSR NEWUSR[:NEWUID]

OLDUSR إما اسم مستخدم صالح أو UID مع البادئة +. ما لم يتم توفير NEWUID، يجب أن يكون NEWUSR أيضًا إما اسم مستخدم صالح أو +UID. وإلا، لا يلزم أن تكون كل من NEWUSR و NEWUID مدرجة في قاعدة بيانات مستخدمي النظام.

نتيجة لذلك، سيتم تخزين كل ملف إدخال يمتلكه OLDUSR في الأرشيف مع اسم مالك NEWUSR و UID هو NEWUID.

-p، --preserve-permissions، --same-permissions
تعيين أذونات الملفات المستخرجة لتكون تلك المسجلة في الأرشيف (الافتراضي للمستخدم الخارق).

--same-owner
حاول استخراج الملفات بنفس الملكية الموجودة في الأرشيف (الافتراضي للمستخدم الخارق).

-s، --preserve-order، --same-order
أخبر tar أن قائمة أسماء الملفات المراد معالجتها مرتبة بنفس الترتيب الموجود في الملفات الموجودة في الأرشيف.

--sort=ORDER
عند إنشاء أرشيف، قم بفرز إدخالات الدليل وفقًا لـ ORDER، وهو إما none أو name أو inode.

الافتراضي هو --sort=none، والذي يخزن أعضاء الأرشيف بنفس الترتيب الذي يتم إرجاعه بواسطة نظام التشغيل.

يضمن استخدام --sort=name أن يكون ترتيب الأعضاء في الأرشيف الذي تم إنشاؤه موحدًا وقابلاً للتكرار.

باستخدام --sort=inode، يقل عدد عمليات البحث على القرص التي تتم عند إنشاء الأرشيف، وبالتالي يمكن أن يؤدي ذلك إلى تسريع عملية الأرشفة بشكل كبير. هذا الترتيب مدعوم فقط إذا كان النظام الأساسي يوفر المعلومات اللازمة.

السمات الممتدة للملف

--acls تمكين دعم ACLs الخاص بـ POSIX.

--no-acls

تعطيل دعم ACLs الخاص بـ POSIX.

--selinux

تمكين دعم سياق SELinux.

--no-selinux

تعطيل دعم سياق SELinux.

--xattrs

تمكين دعم السمات الممتدة.

--no-xattrs

تعطيل دعم السمات الممتدة.

--xattrs-exclude=PATTERN

حدد نمط الاستبعاد لمفاتيح xattr. PATTERN هو نمط glob، على سبيل المثال، --xattrs-exclude='user.\*' لتضمين السمات من مساحة اسم المستخدم فقط.

--xattrs-include=PATTERN

حدد نمط التضمين لمفاتيح xattr. PATTERN هو نمط glob.

اختيار الجهاز وتبديله

-f, --file=ARCHIVE

استخدم ملف الأرشيف أو الجهاز ARCHIVE. إذا لم يتم إعطاء هذا الخيار، فسيقوم tar أولاً بفحص متغير البيئة TAPE. إذا تم تعيينه، فسيتم استخدام قيمته كاسم أرشيف. وإلا، فسيفترض tar القيمة الافتراضية المضمنة. يمكن فحص القيمة الافتراضية إما باستخدام خيار --show-defaults، أو في نهاية إخراج tar --help.

اسم الأرشيف الذي يحتوي على نقطتين يحدد ملفًا أو جهازًا على جهاز بعيد.
يتم أخذ الجزء الذي يسبق النقطتين كاسم الجهاز أو عنوان IP، ويتم أخذ الجزء الذي يليها كمسار الملف أو الجهاز، على سبيل المثال:

--file=remotehost:/dev/sr0

يمكن إضافة اسم مستخدم اختياري قبل اسم المضيف، مع وضع علامة @ بينهما.

افتراضيًا، يتم الوصول إلى الجهاز البعيد عبر الأمر `rsh(1)`. في الوقت الحاضر، من الشائع استخدام [ssh]({filename}../../ssh)(1) بدلاً من ذلك. يمكنك القيام بذلك عن طريق إعطاء خيار سطر الأوامر التالي:

--rsh-command=/usr/bin/ssh

يجب أن يكون لدى الجهاز البعيد الأمر `rmt(8)` مثبتًا. إذا كان مسارها لا يتطابق مع المسار الافتراضي لـ tar، فيمكنك إعلام tar بالمسار الصحيح باستخدام خيار `--rmt-command`.

--force-local
ملف الأرشيف محلي حتى لو كان يحتوي على نقطتين.

-F, --info-script=COMMAND, --new-volume-script=COMMAND
قم بتشغيل COMMAND في نهاية كل شريط (يشير إلى -M). يمكن أن يتضمن الأمر وسائط.
عند بدء التشغيل، سيرث بيئة tar بالإضافة إلى المتغيرات التالية:

TAR_VERSION
رقم إصدار GNU tar.

TAR_ARCHIVE
اسم الأرشيف الذي تقوم tar بمعالجته.

TAR_BLOCKING_FACTOR
عامل الحظر الحالي، أي عدد الكتل بحجم 512 بايت في سجل.

TAR_VOLUME
الرقم التسلسلي للشريط الذي تقوم tar بمعالجته (يتم تعيينه إذا كان يتم قراءة أرشيف متعدد الأحجام).

TAR_FORMAT
تنسيق الأرشيف الذي تتم معالجته. أحد: gnu، oldgnu، posix، ustar، v7.

TAR_SUBCOMMAND
خيار قصير (مع شرطة بادئة) يصف العملية التي تنفذها tar.

TAR_FD واصف الملف الذي يمكن استخدامه لنقل اسم الحجم الجديد إلى tar.

إذا فشل البرنامج النصي للمعلومات، فسوف يخرج tar؛ وإلا، فسيقوم بالبدء في كتابة الحجم التالي.

-L, --tape-length=N
غيّر الشريط بعد كتابة Nx1024 بايت. إذا كانت N متبوعة بحرف يدل على حجم، فإن هذا الحرف يحدد العامل المضاعف الذي سيستخدم بدلاً من 1024.

هذا الخيار يعني -M.

-M, --multi-volume
أنشئ/اعرض/استخرج أرشيفًا متعدد الأجزاء.

--rmt-command=COMMAND
استخدم COMMAND بدلاً من rmt عند الوصول إلى الأرشيفات البعيدة. راجع وصف الخيار -f أعلاه.

--rsh-command=COMMAND
استخدم COMMAND بدلاً من rsh عند الوصول إلى الأرشيفات البعيدة. راجع وصف الخيار -f أعلاه.

--volno-file=FILE
عند استخدام هذا الخيار مع --multi-volume، سيتتبع tar رقم الجزء من الأرشيف متعدد الأجزاء الذي يعمل عليه في FILE.

تحديد حجم الكتلة

-b, --blocking-factor=BLOCKS
عيّن حجم السجل إلى BLOCKSx512 بايت.

-B, --read-full-records
عند العرض أو الاستخراج، اقبل سجلات الإدخال غير المكتملة بعد علامة نهاية الملف.

-i, --ignore-zeros
تجاهل الكتل التي تحتوي على أصفار في الأرشيف. عادةً، تعني كتلتان متتاليتان بحجم 512 بايت مليئتان بالأصفار نهاية الملف، ويتوقف tar عن القراءة بعد مواجهة ذلك. يوجه هذا الخيار البرنامج إلى الاستمرار في القراءة، وهو مفيد عند قراءة الأرشيفات التي تم إنشاؤها باستخدام الخيار -A.

--record-size=NUMBER
عيّن حجم السجل. NUMBER هو عدد البايتات لكل سجل. يجب أن يكون مضاعفًا لـ 512. يمكن إضافة لاحقة لحجم، مثل --record-size=10K، للحصول على 10 كيلوبايت. راجع القسم الفرعي "لاحقات الحجم" للحصول على قائمة باللاحقات الصالحة.

تحديد تنسيق الأرشيف

-H, --format=FORMAT
أنشئ أرشيفًا بالتنسيق المحدد. التنسيقات الصالحة هي:

gnu تنسيق GNU tar 1.13.x

oldgnu تنسيق GNU كما هو الحال في tar <= 1.12.

pax، posix
تنسيق POSIX 1003.1-2001 (pax).

ustar تنسيق POSIX 1003.1-1988 (ustar).

v7 تنسيق V7 القديم.

--old-archive، --portability
نفس الخيار --format=v7.

--pax-option=keyword[[:]=value][,keyword[[:]=value]]...
تحكم في كلمات pax عند إنشاء أرشيفات PAX (-H pax). هذا الخيار يعادل الخيار -o في الأداة pax(1).

--posix
نفس الخيار --format=posix.

-V, --label=TEXT
أنشئ أرشيفًا باسم جزء TEXT. عند العرض أو الاستخراج، استخدم TEXT كنمط لاسم الجزء.

خيارات الضغط

-a, --auto-compress
استخدم لاحقة الأرشيف لتحديد برنامج الضغط.

-I, --use-compress-program=COMMAND
قم بتصفية البيانات باستخدام COMMAND. يجب أن يقبل الخيار -d لفك الضغط. يمكن أن يحتوي الوسيط على خيارات سطر الأوامر.

-j, --bzip2
قم بتصفية الأرشيف باستخدام [bzip2]({filename}bzip2.md)(1).

-J, --xz
قم بتصفية الأرشيف باستخدام [xz]({filename}../../xz)(1).

--lzip قم بتصفية الأرشيف باستخدام lzip(1).

--lzma قم بتصفية الأرشيف باستخدام lzma(1).

--lzop قم بتصفية الأرشيف باستخدام lzop(1).

--no-auto-compress
لا تستخدم لاحقة الأرشيف لتحديد برنامج الضغط.

-z, --gzip، --gunzip، --ungzip
قم بتصفية الأرشيف باستخدام [gzip]({filename}../../gzip)(1).

-Z, --compress، --uncompress
قم بتصفية الأرشيف باستخدام compress(1).

--zstd قم بتصفية الأرشيف باستخدام zstd(1).

تحديد الملفات محليًا

--add-file=FILE
أضف FILE إلى الأرشيف (مفيد إذا كان اسمه يبدأ بشرطة).

--backup[=CONTROL]
قم بعمل نسخة احتياطية قبل الإزالة. يتحكم الوسيط CONTROL، إذا تم توفيره، في سياسة النسخ الاحتياطي.
قيمته الصالحة هي:

none, off
لا تقم بعمل نسخ احتياطية أبدًا.

t, numbered
قم بعمل نسخ احتياطية مرقمة.

nil, existing
قم بعمل نسخ احتياطية مرقمة إذا كانت النسخ الاحتياطية المرقمة موجودة، وقم بعمل نسخ احتياطية بسيطة بخلاف ذلك.

never, simple
قم دائمًا بعمل نسخ احتياطية بسيطة.

إذا لم يتم إعطاء CONTROL، يتم الحصول على القيمة من متغير البيئة VERSION_CONTROL.
إذا لم يتم تعيينه، يتم افتراض existing.

-C, --directory=DIR
انتقل إلى DIR قبل إجراء أي عمليات. هذا الخيار حساس للترتيب، أي أنه يؤثر على جميع الخيارات التي تليه.

--exclude=PATTERN
استبعد الملفات التي تطابق PATTERN، وهو نمط أحرف بدل على نمط glob(3).

--exclude-backups
استبعد ملفات النسخ الاحتياطي وملفات القفل.

--exclude-caches
استبعد محتويات الدلائل التي تحتوي على ملف CACHEDIR.TAG، باستثناء ملف العلامة نفسه.

--exclude-caches-all
استبعد الدلائل التي تحتوي على ملف CACHEDIR.TAG والملف نفسه.

--exclude-caches-under
استبعد كل شيء تحت الدلائل التي تحتوي على CACHEDIR.TAG.

--exclude-ignore=FILE
قبل تفريغ دليل، تحقق مما إذا كان يحتوي على FILE. إذا كان الأمر كذلك، اقرأ أنماط الاستبعاد من هذا الملف. تؤثر الأنماط فقط على الدليل نفسه.

--exclude-ignore-recursive=FILE
نفس --exclude-ignore، باستثناء أن الأنماط من FILE تؤثر على الدليل وجميع الدلائل الفرعية.

--exclude-tag=FILE
استبعد محتويات الدلائل التي تحتوي على FILE، باستثناء FILE نفسه.

--exclude-tag-all=FILE
استبعد الدلائل التي تحتوي على FILE.

--exclude-tag-under=FILE
استبعد كل شيء تحت الدلائل التي تحتوي على FILE.

--exclude-vcs
استبعد أدلة نظام التحكم في الإصدار.

--exclude-vcs-ignores
استبعد الملفات التي تطابق الأنماط التي تم قراءتها من ملفات التجاهل الخاصة بنظام التحكم في الإصدار. الملفات المدعومة هي: .cvsignore و .gitignore و .bzrignore و .hgignore.

-h, --dereference
اتبع الروابط الرمزية؛ قم بأرشفة وتفريغ الملفات التي تشير إليها.

--hard-dereference
اتبع الروابط الصلبة؛ قم بأرشفة وتفريغ الملفات التي تشير إليها.

-K, --starting-file=MEMBER
ابدأ بالملف المحدد في الأرشيف.

--newer-mtime=DATE
اعمل على الملفات التي تم تغيير بياناتها بعد DATE. إذا بدأ DATE بـ / أو .، فيتم اعتباره اسم ملف؛ يتم استخدام وقت تعديل هذا الملف كتاريخ.

--no-null
تعطيل تأثير الخيار --null السابق.

--no-recursion
تجنب النزول تلقائيًا في الدلائل.

--no-unquote
لا تقم بإلغاء اقتباس أسماء الملفات أو الأعضاء.

--no-verbatim-files-from
عامل كل سطر يتم قراءته من قائمة الملفات كما لو كان يتم توفيره في سطر الأوامر. أي تتم إزالة المسافات البيضاء البادئة واللاحقة، وإذا بدأ السلسلة الناتجة بشرطة، فيتم التعامل معها كخيار سطر أوامر tar.

هذا هو السلوك الافتراضي. يتم توفير الخيار --no-verbatim-files-from كوسيلة لاستعادته بعد الخيار --verbatim-files-from.

هذا الخيار هو خيار موضعي: يؤثر على جميع خيارات --files-from التي تظهر بعده في سطر الأوامر، حتى ظهور خيار --verbatim-files-from أو نهاية السطر، أيهما يأتي أولاً.

يتم تضمينه ضمنيًا بواسطة الخيار --no-null.

`--null` قم بإعداد خيارات `-T` اللاحقة لقراءة الأسماء المنتهية بصفر حرفيًا (تعطيل المعالجة الخاصة للأسماء التي تبدأ بشرطة).

انظر أيضًا إلى --verbatim-files-from.

`-N, --newer=DATE, --after-date=DATE`
قم بتخزين الملفات التي تم تعديلها بعد التاريخ المحدد. إذا بدأ `DATE` بـ `/` أو `.`، فسيتم اعتباره اسم ملف؛ ويتم استخدام وقت التعديل لهذا الملف كتاريخ.

`--one-file-system`
ابقَ في نظام الملفات المحلي عند إنشاء الأرشيف.

`-P, --absolute-names`
لا تقم بإزالة الشرطات الأولى من أسماء الملفات عند إنشاء الأرشيفات.

`--recursion`
استمر في التكرار داخل الدلائل (افتراضي).

`--suffix=STRING`
قم بعمل نسخة احتياطية قبل الحذف، وتجاوز اللاحقة الافتراضية. اللاحقة الافتراضية هي `~`، ما لم يتم تجاوزها بواسطة متغير البيئة `SIMPLE_BACKUP_SUFFIX`.

`-T, --files-from=FILE`
احصل على الأسماء المراد استخراجها أو إنشاؤها من `FILE`.

ما لم يتم تحديد خلاف ذلك، يجب أن يحتوي `FILE` على قائمة بالأسماء مفصولة بـ ASCII LF (أي اسم واحد لكل سطر). يتم التعامل مع الأسماء التي يتم قراءتها بنفس الطريقة التي يتم بها التعامل مع وسيطات سطر الأوامر. تخضع لإزالة علامات الاقتباس وتقسيم الكلمات، وأي سلسلة تبدأ بـ `-` يتم التعامل معها كخيار لأمر `tar`.

إذا كان هذا السلوك غير مرغوب فيه، فيمكن إيقافه باستخدام الخيار `--verbatim-files-from`.

يقوم الخيار `--null` بإخبار `tar` بأن الأسماء الموجودة في `FILE` مفصولة بحرف ASCII NUL بدلاً من LF. وهو مفيد إذا تم إنشاء القائمة بواسطة الأمر `find -print0`.

`--unquote`
قم بإزالة علامات الاقتباس من أسماء الملفات أو الأعضاء (افتراضي).

`--verbatim-files-from`
تعامل مع كل سطر يتم الحصول عليه من قائمة ملفات كاسم ملف، حتى لو كان يبدأ بشرطة. يتم توفير قوائم الملفات باستخدام الخيار `--files-from` (أو `-T`). السلوك الافتراضي هو التعامل مع الأسماء المتوفرة في قوائم الملفات كما لو تم كتابتها في سطر الأوامر، أي يتم التعامل مع أي أسماء تبدأ بشرطة كخيارات لأمر `tar`. يعطل الخيار `--verbatim-files-from` هذا السلوك.

يؤثر هذا الخيار على جميع خيارات `--files-from` التي تظهر بعده في سطر الأوامر. يتم عكس تأثيره بواسطة الخيار `--no-verbatim-files-from`.

يتم تضمين هذا الخيار ضمنيًا بواسطة الخيار `--null`.

انظر أيضًا إلى `--add-file`.

`-X, --exclude-from=FILE`
استبعد الملفات التي تطابق الأنماط المدرجة في `FILE`.

تحويلات أسماء الملفات

`--strip-components=NUMBER`
قم بإزالة `NUMBER` من المكونات الأولى من أسماء الملفات عند الاستخراج.

`--transform=EXPRESSION, --xform=EXPRESSION`
استخدم تعبير `sed` للاستبدال لتحويل أسماء الملفات.

خيارات مطابقة أسماء الملفات

تؤثر هذه الخيارات على كل من أنماط الاستثناء والشمول.

`--anchored`
تطابق الأنماط بداية اسم الملف.

`--ignore-case`
تجاهل حالة الأحرف.

`--no-anchored`
تطابق الأنماط بعد أي `/` (افتراضي للاستثناء).

`--no-ignore-case`
مطابقة حساسة لحالة الأحرف (افتراضي).

`--no-wildcards`
مطابقة حرفية للسلاسل.

`--no-wildcards-match-slash`
لا تطابق الأحرف البدلية `/`.

`--wildcards`
استخدم الأحرف البدلية (افتراضي للاستثناء).

--wildcards-match-slash

تطابق الأحرف البديلة مع / (افتراضي للاستثناء).

مخرجات إعلامية

--checkpoint[=N]

عرض رسائل التقدم كل N سجل (افتراضي 10).

--checkpoint-action=ACTION

تشغيل ACTION لكل نقطة تفتيش.

--clamp-mtime

يتم تعيين الوقت فقط عندما يكون الملف أحدث مما تم تقديمه باستخدام --mtime.

--full-time

اطبع وقت الملف بدقته الكاملة.

--index-file=FILE

إرسال مخرجات تفصيلية إلى FILE.

-l, --check-links

اطبع رسالة إذا لم يتم تفريغ جميع الروابط.

--no-quote-chars=STRING

تعطيل الاقتباس للأحرف من STRING.

--quote-chars=STRING

اقتباس الأحرف من STRING إضافيًا.

--quoting-style=STYLE

تعيين نمط الاقتباس لأسماء الملفات والأعضاء. القيم الصالحة لـ STYLE هي literal، shell، shell-always، c، c-maybe، escape، locale، clocale.

-R, --block-number

إظهار رقم الكتلة داخل الأرشيف مع كل رسالة.

--show-omitted-dirs

عند سرد أو استخراج، قم بسرد كل دليل لا يطابق معايير البحث.

--show-transformed-names, --show-stored-names

إظهار أسماء الملفات أو الأرشيفات بعد التحويل بواسطة خيارات --strip و --transform.

--totals[=SIGNAL]

اطبع إجمالي عدد البايتات بعد معالجة الأرشيف. إذا تم تقديم SIGNAL، فاطبع إجمالي عدد البايتات عندما يتم تسليم هذه الإشارة. الإشارات المسموح بها هي: SIGHUP، SIGQUIT، SIGINT، SIGUSR1، و SIGUSR2. يمكن حذف البادئة SIG.

--utc اطبع أوقات تعديل الملف في التوقيت العالمي الموحد.

-v, --verbose

سرد الملفات التي تتم معالجتها بإسهاب. يزيد كل مثيل من هذا الخيار في سطر الأوامر من مستوى الإسهاب بمقدار واحد. الحد الأقصى لمستوى الإسهاب هو 3. للحصول على مناقشة مفصلة حول كيفية تأثير مستويات الإسهاب المختلفة على مخرجات tar، يرجى الرجوع إلى دليل GNU Tar، القسم الفرعي 2.5.2 "خيار '--verbose'".

--warning=KEYWORD

تمكين أو تعطيل رسائل التحذير التي يتم تحديدها بواسطة KEYWORD. يتم كبت الرسائل إذا كانت KEYWORD مسبوقة بـ no-، ويتم تمكينها بخلاف ذلك.

تتراكم خيارات --warning المتعددة.

الكلمات الرئيسية التي تتحكم في عملية tar العامة:

all    تمكين جميع رسائل التحذير. هذا هو الافتراضي.

none   تعطيل جميع رسائل التحذير.

filename-with-nuls
"%s: اسم الملف الذي تمت قراءته يحتوي على حرف null"

alone-zero-block
"كتلة صفرية وحيدة في %s"

الكلمات الرئيسية القابلة للتطبيق لـ tar --create:

cachedir
"%s: يحتوي على علامة دليل ذاكرة تخزين مؤقت %s; %s"

file-shrank
"%s: تقلص حجم الملف بمقدار %s بايت؛ يتم حشوها بأصفار"

xdev   "%s: الملف موجود على نظام ملفات مختلف؛ لم يتم تفريغه"

file-ignored
"%s: نوع ملف غير معروف؛ تم تجاهل الملف"
"%s: تم تجاهل المقبس"
"%s: تم تجاهل الباب"

file-unchanged
"%s: الملف لم يتغير؛ لم يتم تفريغه"

ignore-archive
"%s: لا يمكن أن يحتوي الأرشيف على نفسه؛ لم يتم تفريغه"

file-removed
"%s: تمت إزالة الملف قبل أن نقرأه"

file-changed
"%s: تغير الملف أثناء قراءته"

failed-read

يكبت التحذيرات المتعلقة بالملفات أو الدلائل التي لا يمكن قراءتها. هذا الكلمة الرئيسية تنطبق فقط في حالة استخدامها مع خيار --ignore-failed-read.

الكلمات الرئيسية القابلة للتطبيق لـ tar --extract:

existing-file
"%s: تخطي الملف الموجود"

timestamp
"%s: طابع زمني قديم بشكل غير معقول %s"
"%s: الطابع الزمني %s يسبق بـ %s ثانية"

contiguous-cast
"استخراج الملفات المتجاورة كملفات عادية"

symlink-cast
"محاولة استخراج الروابط الرمزية كروابط ثابتة"

unknown-cast
"%s: نوع ملف غير معروف '%c'، تم استخراجه كملف عادي"

ignore-newer
"الملف الحالي أحدث أو بنفس عمره"

unknown-keyword
"تجاهل كلمة مفتاح الرأس الممتد غير المعروفة '%s'"

decompress-program
يتحكم في الوصف المطوّل للأخطاء التي تحدث عند محاولة تشغيل برامج فك الضغط البديلة. يتم تعطيل هذا التحذير افتراضيًا (إلا إذا تم استخدام `--verbose`). مثال شائع لما يمكنك الحصول عليه عند استخدام هذا التحذير هو:

$ tar --warning=decompress-program -x -f archive.Z
tar (child): لا يمكن تشغيل compress: لا يوجد مثل هذا الملف أو الدليل
tar (child): محاولة استخدام gzip

هذا يعني أن tar حاول أولاً فك ضغط archive.Z باستخدام compress، وعندما فشل ذلك، انتقل إلى استخدام gzip.

record-size
"حجم السجل = %lu كتلة"

كلمات مفتاحية تتحكم في الاستخراج المتزايد:

rename-directory
"%s: تم تغيير اسم الدليل من %s"
"%s: تم تغيير اسم الدليل"

new-directory
"%s: الدليل جديد"

xdev   "%s: الدليل موجود على جهاز مختلف: لا يتم حذفه"

bad-dumpdir
"دليل dumpdir غير صالح: 'X' لم يتم استخدامه مطلقًا"

-w, --interactive, --confirmation
اطلب التأكيد لكل إجراء.

### خيارات التوافق
-o     عند الإنشاء، يكون نفس `--old-archive`. عند الاستخراج، يكون نفس `--no-same-owner`.

### لاحقات الحجم
اللاحقة الوحدات     مكافئ البايت

b   الكتل   SIZE x 512
B   كيلوبايت    SIZE x 1024
c   بايت    SIZE
G   جيجابايت    SIZE x 1024^3
K   كيلوبايت    SIZE x 1024
k   كيلوبايت    SIZE x 1024
M   ميجابايت    SIZE x 1024^2
P   بيتابايت    SIZE x 1024^5
T   تيرابايت    SIZE x 1024^4
w   كلمات   SIZE x 2

## قيمة الإرجاع
يشير رمز خروج Tar إلى ما إذا كان قد تمكن من إجراء العملية المطلوبة بنجاح، وإذا لم يكن الأمر كذلك، فما هو نوع الخطأ الذي حدث.

0   إنهاء ناجح.

1   تختلف بعض الملفات. إذا تم استدعاء tar مع خيار سطر الأوامر `--compare` أو `--diff` أو `-d`، فهذا يعني أن بعض الملفات في الأرشيف تختلف عن نظيراتها على القرص. إذا تم إعطاء tar أحد خيارات `--create` أو `--append` أو `--update`، فإن رمز الخروج هذا يعني أنه تم تغيير بعض الملفات أثناء الأرشفة وبالتالي لا يحتوي الأرشيف الناتج على النسخة الدقيقة من مجموعة الملفات.

2   خطأ قاتل. هذا يعني أنه حدث خطأ قاتل لا يمكن إصلاحه.

إذا خرج برنامج فرعي تم استدعاؤه بواسطة tar برمز خروج غير صفري، فإن tar نفسه يخرج بنفس الرمز أيضًا. يمكن أن يحدث هذا، على سبيل المثال، إذا تم استخدام خيار ضغط (مثل `-z`) وفشل برنامج الضغط الخارجي. مثال آخر هو فشل rmt أثناء النسخ الاحتياطي إلى جهاز بعيد.

انظر أيضًا

bzip2(1)، compress(1)، gzip(1)، lzma(1)، lzop(1)، rmt(8)، symlink(7)، xz(1)، zstd(1).

دليل tar الكامل: قم بتشغيل info tar أو استخدم emacs(1) في وضع info لقراءته.

يمكن العثور على نسخ عبر الإنترنت من وثائق GNU tar بتنسيقات مختلفة على:

https://www.gnu.org/software/tar/manual

تقارير الأخطاء

أرسل تقارير الأخطاء إلى <_>.

حقوق النشر

حقوق النشر © 2023 مؤسسة البرمجيات الحرة. الترخيص GPLv3+: GNU GPL الإصدار 3 أو أحدث [http://gnu.org/licenses/gpl.html] هذا برنامج مجاني: يمكنك تغيير وإعادة توزيعه. لا توجد أي ضمانات، إلى الحد الذي يسمح به القانون.