باستخدام نظام التشغيل Linux و Unix Command: find

يعمل الأمر Linux و Unix على البحث عن الملفات في التسلسل الهرمي للدليل.

بناء الجملة للبحث عن الأمر:

العثور على [المسار ...] [تعبير]

وصف

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

الحجة الأولى التي تبدأ بـ:

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

يخرج الأمر find بالحالة 0 إذا تمت معالجة جميع الملفات بنجاح ، أكبر من 0 إذا حدثت أخطاء.

التعبيرات

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

خيارات

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

-daystart أوقات القياس (بالنسبة إلى -ammen ، -time ، -cmin ، -ctime ، -mmin ، و -mtime ) من بداية اليوم بدلاً من 24 ساعة مضت.
-عمق معالجة محتويات كل دليل قبل الدليل نفسه.
-إتبع وصلات رمزية Dereference. ضمني - neaeaf .
مساعدة أو - مساعدة طباعة ملخص عن استخدام سطر الأوامر للبحث والخروج.
-maxdepth [number] ينزل عند معظم المستويات (عدد صحيح غير سالب) من الدلائل أسفل وسائط سطر الأوامر. تعبير -maxdepth 0 يعني فقط تطبيق الاختبارات والإجراءات على وسيطات سطر الأوامر.
-mindepth [العدد] لا تقم بتطبيق أي اختبارات أو إجراءات بمستويات أقل من الرقم (عدد صحيح غير سالب). تعني تعبير -mindepth 1 معالجة كافة الملفات باستثناء وسائط سطر الأوامر.
-تتزايد لا تنزل الدلائل على أنظمة الملفات الأخرى. اسم بديل لـ xdev ، للتوافق مع بعض الإصدارات الأخرى من البحث .
-noleaf لا تقم بالتحسين عن طريق افتراض أن الدلائل تحتوي على دلائل فرعية أقل من عدد الارتباطات الثابتة الخاصة بها. *
التحويل أو النسخ اطبع رقم إصدار البحث والخروج.
-xdev لا تنزل الدلائل على أنظمة الملفات الأخرى.

* هذا الخيار مطلوب عند البحث عن أنظمة الملفات التي لا تتبع إتفاقية Unix link-link ، مثل CD-ROM أو MS-DOS filesystems أو AFS mount mount points. يحتوي كل دليل على نظام ملفات Unix عادي على 2 ارتباطات صلبة على الأقل: اسمه و . (فترة) دخول. بالإضافة إلى ذلك ، تحتوي كل الدلائل الفرعية (إن وجدت) على إدخال مرتبط بهذا الدليل.

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

اختبارات

يمكن تحديد الحجج الرقمية على النحو التالي:

+ ن لأكبر من ن.
-n لأقل من ن.
ن بالضبط ن.
-امين ن تم الدخول إلى الملف قبل عدة دقائق.
-إنسان [ملف] تم الدخول إلى الملف مؤخرًا أكثر من تعديل الملف . يتأثر -anewer by -follow only if -follow come--ewer في سطر الأوامر.
في الوقت المناسب ن تم الدخول إلى الملف آخر مرة قبل 24 ساعة.
-cmin ن آخر تعديل تم تغييره منذ أقل من دقيقة.
-جديد [ملف] آخر مرة تم تغيير حالة الملف فيها أكثر من تعديل الملف.
- تتأثر cnewer بواسطة -follow فقط إذا جاء -follow قبل -nnner على سطر الأوامر.
- نيم تم تغيير آخر تعديل للملف n * قبل 24 ساعة.
-فارغة الملف فارغ وهو إما ملف عادي أو دليل.
-خاطئة دائما خاطئة
-fstype [نوع] الملف موجود على نظام ملفات من النوع المحدد. تختلف أنواع أنظمة الملفات الصحيحة بين الإصدارات المختلفة من Unix؛ قائمة غير كاملة من أنواع أنظمة الملفات المقبولة في بعض إصدارات Unix أو غيرها هي: ufs ، 4.2 ، 4.3 ، nfs ، tmp ، mfs ، S51K ، S52K. يمكنك استخدام -printf باستخدام توجيه٪ F للاطلاع على أنواع أنظمة الملفات لديك.
-gid ن الرقم التعريفي لمجموعة الملفات هو n .
المجموعة [gname] ينتمي الملف إلى gname المجموعة (يُسمح بمعرّف مجموعة رقمية).
- اسم [نمط] مثل -lname ، ولكن المباراة غير حساس لحالة الأحرف.
-iname [نمط] مثل اسم ، ولكن المباراة غير حساس لحالة الأحرف. على سبيل المثال ، الأنماط fo * و F ؟؟ تطابق أسماء الملفات Foo و FOO و foo و fOo وما إلى ذلك.
- لا يحتوي الملف على رمز inode رقم n .
-الثقب [نمط] مثل -path ، ولكن المباراة غير حساسة.
- الريجكس مثل -regex ، ولكن المباراة غير حساسة لحالة الأحرف.
الروابط ن يحتوي الملف على روابط n .
-نمط [نمط] الملف هو ارتباط رمزي تتطابق محتوياته مع نموذج shell. الحروف الأولية لا تعالج / أو . خصيصا.
-ميني ن آخر تعديل لبيانات الملف كان قبل دقائق معدودة.
-mtime n آخر تعديل لبيانات الملف كان n * قبل 24 ساعة.
اسم [نمط] قاعدة اسم الملف (المسار مع إزالة الدلائل الرائدة) تطابق نمط shell. الحروف الأولية ( * و ؟ و [] ) لا تتطابق مع . في بداية الاسم الأساسي. لتجاهل الدليل والملفات الموجودة تحته ، استخدم -run ؛ شاهد مثالاً في وصف -path .
-جديد [الملف] تم تعديل الملف في الآونة الأخيرة أكثر من الملف . يتأثر التعبير -newer بواسطة -follow فقط إذا جاء -follow قبل -newer على سطر الأوامر.
-nouser لا يوجد مستخدم يتوافق مع معرف المستخدم الرقمي للملف.
-nogroup لا توجد مجموعة تقابل الرقم التعريفي للمجموعة الرقمية.
-الطبع [نمط] اسم الملف يطابق نمط نمط shell. الحروف الأولية لا تعالج / أو . خصيصا؛ لذلك ، على سبيل المثال ، تجد. -path './sr*sc سيقوم بطباعة إدخال لدليل يدعى ./src/misc (إن وجد). لتجاهل شجرة دليل كاملة ، استخدم brune بدلاً من فحص كل ملف في الشجرة. على سبيل المثال ، لتخطي الدليل src / emacs وكل الملفات والدلائل تحته ، وطباعة أسماء الملفات الأخرى الموجودة ، قم بعمل شيء كهذا: find. -path "./src/emacs" -البرون -o -print
على مستوى [الوضع] وحدات بت إذن الملف هي بالضبط [الوضع] (الثماني أو الرمزي). تستخدم الأوضاع الرمزية الوضع 0 كنقطة انطلاق.
-memm -mode يتم تعيين كل بتات الإذن [mode] للملف.
وضع -PERMEM + يتم تعيين أي من وحدات bits الإذن للملف.
ريجكس [نمط] اسم الملف يطابق نمط التعبير العادي. هذه مطابقة على المسار بالكامل ، وليس بحثًا. على سبيل المثال ، لمطابقة ملف باسم ./fubar3 ، يمكنك استخدام التعبير العادي . * شريط. أو . * b. * 3 ، ولكن ليس b. * r3 .
الحجم n [bckw] يستخدم الملف n وحدات من الفضاء. الوحدات عبارة عن كتل 512 بايت بشكل افتراضي أو إذا كان b يتبع n ، أو البايتات إذا كان c يتبع n ، أو kilobytes إذا كان k يتبع n ، أو 2 بايت إذا كان w يتبع n . لا يقوم الحجم بحساب الكتل غير المباشرة ، ولكنه يقوم بحساب الكتل في ملفات متفرقة لم يتم تخصيصها بالفعل.
-صحيح دائما صحيح او صادق.
نوع ج الملف من النوع c :
ب كتلة (مخزنة) الخاصة
ج حرف (غير محاصر) خاص
د دليل
ص أنبوب مسمى (FIFO)
F الملف العادي
ل ارتباط رمزي
الصورة قابس كهرباء
د الباب (سولاريس)
بين نيد معرف المستخدم الرقمي للملف هو n .
تستخدم ن تم الدخول إلى الملف بعد n أيام من آخر تغيير لحالته.
المستخدم الملف مملوك من قبل المستخدم uname (معرف المستخدم الرقمي مسموح).
-النوع نفس النوع- ما لم يكن الملف رابطًا رمزيًا. بالنسبة للروابط الرمزية: إذا لم يتم إعطاء -follow ، صحيح إذا كان الملف عبارة عن رابط لملف من النوع c ؛ إذا تم إعطاء -follow ، صحيح إذا كان c هو l. بمعنى آخر ، بالنسبة للروابط الرمزية ،
-xtype يتحقق من نوع الملف الذي لا يتحقق -type .

أفعال

الأمر -exec

تنفيذ الأمر صحيح إذا تم إرجاع 0 حالة. تعتبر جميع الوسيطات التالية التي يتم العثور عليها هي الوسيطات للأمر حتى يتم تكوين وسيطة تتألف من '؛' هو واجه. يتم استبدال السلسلة `{} 'باسم الملف الحالي الذي تتم معالجته في كل مكان حدوثه في الوسيطات إلى الأمر ، وليس فقط في الوسيطات حيث تكون وحدها ، كما في بعض إصدارات البحث . قد يحتاج كل من هذه الإنشاءات إلى الهروب (مع "\") أو اقتباس لحمايتها من التوسع عن طريق القشرة. يتم تنفيذ الأمر في دليل البدء.

ملف FLS

صحيح؛ مثل -ls لكن الكتابة إلى ملف مثل -fprint.

ملف بصمة

صحيح؛ طباعة اسم الملف الكامل في ملف الملف . إذا لم يكن الملف موجودًا عند تشغيل البحث ، فسيتم إنشاؤه ؛ إذا كان موجودًا ، فسيتم اقتطاعه. يتم التعامل مع أسماء الملفات `` / dev / stdout 'و `` / dev / stderr' بشكل خاص ؛ تشير إلى الإخراج القياسي ومخرجات الخطأ القياسي ، على التوالي.

-fprint0 الملف

صحيح؛ مثل -print0 لكن الكتابة إلى ملف مثل -fprint.

تنسيق ملف fprintf

صحيح؛ مثل -printf لكن الكتابة إلى ملف مثل -fprint.

الأمر -ok

مثل -exec لكن اطلب من المستخدم أولاً (على الإدخال القياسي)؛ إذا لم تبدأ الاستجابة بـ 'y' أو 'Y' ، فلا تقم بتشغيل الأمر ، وإرجاع false.

-طباعة

صحيح؛ طباعة اسم الملف الكامل على الإخراج القياسي ، متبوعاً بخط جديد.

-print0

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

تنسيق printf

صحيح؛ تنسيق الطباعة على المخرجات القياسية ، وتفسير توجيهات '\' escapes و `٪ '. ﯾﻣﮐن ﺗﺣدﯾد ﻋروض وﺣﻘول اﻟﻣﯾزة ﮐﻣﺎ ھو اﻟﺣﺎل ﻣﻊ اﻟوظﯾﻔﺔ C "printf". على عكس -print -printf لا يضيف سطر جديد في نهاية السلسلة. عمليات الهروب والتوجيهات هي:

جرس الانذار.

مسافة للخلف.

\ ج

أوقف الطباعة من هذا التنسيق على الفور وقم بإخراج الإخراج.

\F

نموذج تغذية.

\ ن

خط جديد.

\ ص

إرجاع.

\ ر

مساحة أفقية.

\الخامس

علامة التبويب عمودي.

\\

حرف مائل عكسي (`\ ').

\ NNN

الحرف الذي كود ASCII هو NNN (ثماني).

يتم التعامل مع الحرف "" متبوعًا بأي حرف آخر كحرف عادي ، لذا تتم طباعة كل منهما.

٪٪

علامة النسبة المئوية الحرفية.

٪ا

وقت الوصول الأخير للملف بالتنسيق الذي تم إرجاعه بواسطة الدالة C 'ctime'.

٪ A k

وقت الوصول الأخير للملف بالتنسيق المحدد بواسطة k ، والذي يكون إما "@" أو توجيه لوظيفة "strftime C". يتم سرد القيم المحتملة لـ k أدناه ؛ قد لا يكون بعضها متاحًا على جميع الأنظمة ، بسبب الاختلافات في "strftime" بين الأنظمة.

@

ثانية منذ 1 يناير 1970 ، 00:00 بتوقيت جرينتش.

حقول الوقت:

H

ساعة (00. 23)

أنا

ساعة (01.12)

ك

ساعة (0..23)

ل

ساعة (1..12)

M

دقيقة (00. 59)

ص

الإعدادات المحلية AM أو PM

ص

الوقت ، 12 ساعة (hh: mm: ss [AP] M)

S

الثانية (00. 61)

تي

الوقت ، 24 ساعة (hh: mm: ss)

X

تمثيل وقت اللغة (H: M: S)

Z

المنطقة الزمنية (على سبيل المثال ، EDT) ، أو لا شيء إذا لم يتم تحديد أي منطقة زمنية

حقول التاريخ:

ا

اسم يوم الأسبوع المختصر للغة (Sun..Sat)

ا

الاسم الأسبوعي الكامل للغة ، الطول المتغير (الأحد ... يوم السبت)

ب

اسم شهر مختصر للغة (Jan..dec)

ب

الاسم الكامل للغة المحلية ، الطول المتغير (يناير. ديسمبر)

ج

تاريخ ووقت اللغة (السبت 4 نوفمبر 12:02:33 بتوقيت شرق الولايات المتحدة) 1989

د

يوم من الشهر (01. 31)

د

التاريخ (شهر / يوم / سنة)

ح

نفس ب

ي

يوم من العام (001..366)

م

الشهر (01. 12)

U

عدد أيام الأسبوع مع الأحد كأول يوم في الأسبوع (00..53)

ث

يوم من الأسبوع (0..6)

W

عدد أيام الأسبوع مع الإثنين كأول يوم في الأسبوع (00..53)

س

تمثيل تاريخ اللغة (mm / dd / yy)

ذ

آخر رقمين من السنة (00..99)

Y

عام (1970 ...)

٪ب

حجم الملف في كتل 512 بايت (تقريبًا لأعلى).

ج٪

آخر تغيير في حالة الملف في التنسيق الذي يتم إرجاعه بواسطة الدالة C 'ctime'.

٪ C ك

آخر تغيير في وقت تغيير الملف بالتنسيق المحدد بواسطة k ، وهو نفس النسبة لـ٪ A.

٪د

عمق الملف في شجرة الدليل ؛ 0 يعني أن الملف عبارة عن وسيطة سطر أوامر.

٪F

اسم الملف مع أي أدلة الرائدة إزالتها (فقط العنصر الأخير).

٪F

نوع نظام الملفات الذي يعمل عليه الملف ؛ يمكن استخدام هذه القيمة من أجل -fstype.

٪ ز

اسم مجموعة الملف ، أو معرف المجموعة الرقمي إذا لم يكن للمجموعة اسم.

٪ G

معرّف المجموعة الرقمي للملف.

٪ ح

الدلائل الرائدة لاسم الملف (كل ما عدا العنصر الأخير).

٪ H

وسيطة سطر الأوامر تحت أي ملف تم العثور عليه.

٪أنا

رقم inode الخاص بالملف (بالأرقام العشرية).

٪ك

حجم الملف في كتل 1K (تقريبًا).

٪ ل

كائن من الارتباط الرمزي (سلسلة فارغة إذا لم يكن الملف ارتباطًا رمزيًا).

٪ م

بتات إذن الملف (في ثماني).

٪ ن

عدد الروابط الثابتة للملف.

٪ ع

اسم الملف.

٪ P

اسم الملف مع اسم وسيطة سطر الأوامر التي تم العثور على إزالتها.

٪ الصورة

حجم الملف بالبايت.

٪ ر

وقت التعديل الأخير للملف بالتنسيق الذي تم إرجاعه بواسطة الدالة C 'ctime'.

٪ T ك

وقت التعديل الأخير للملف بالتنسيق المحدد بواسطة k ، وهو نفس لـ٪ A.

٪ ش

اسم المستخدم للملف ، أو معرف المستخدم الرقمي إذا لم يكن لدى المستخدم اسم.

٪ U

معرف المستخدم الرقمي للملف.

يتم تجاهل حرف `٪ 'متبوع بأي حرف آخر (ولكن يتم طباعة الحرف الآخر).

-تقليم

إذا لم يتم إعطاء -Depth ، صحيح ؛ لا تنزل الدليل الحالي.
إذا أعطيت -depth ، كاذبة ؛ بدون تأثير.

-ls

صحيح؛ سرد الملف الحالي بتنسيق 'ls-dils' على المخرجات القياسية. تكون كتلة التكتلات من 1K كتل ، ما لم يتم تعيين متغير البيئة POSIXLY_CORRECT ، وفي هذه الحالة يتم استخدام كتل 512 بايت.

العاملين

تم سردها حسب ترتيب الأسبقية المتناقصة:

( expr )

قوة الأسبقية.

! EXPR

صحيح إذا expr غير صحيح.

لا expr

مثل ! expr .

expr1 expr2

و (ضمنيًا) ؛ لا يتم تقييم expr2 إذا كان expr1 غير صحيح.

expr1 -a expr2

مثل expr1 expr2 .

expr1 -and expr2

مثل expr1 expr2 .

expr1 -o expr2

أو؛ لا يتم تقييم expr2 إذا كان expr1 صحيحًا.

expr1 - أو expr2

مثل expr1 -o expr2 .

expr1 ، expr2

قائمة؛ يتم تقييم كل من expr1 و expr2 دائما. يتم تجاهل قيمة expr1 ؛ قيمة القائمة هي قيمة expr2 .

أمثلة

العثور على / جو المنزل جو

العثور على كل ملف تحت الدليل / المنزل التي يملكها المستخدم جو.

find / usr -name * stat

ابحث عن كل ملف تحت الدليل / usr المنتهي بـ ".stat".

find / var / spool -mtime +60

ابحث عن كل ملف تحت الدليل / var / spool الذي تم تعديله منذ أكثر من 60 يومًا.

البحث عن / tmp -name core -type f -print | xargs / bin / rm -f

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

find / tmp -name core -type f -print0 | xargs -0 / bin / rm -f

العثور على الملفات المسماة الأساسية في أو أسفل الدليل / تمة وحذفها ، ومعالجة أسماء الملفات بطريقة أن أسماء الملفات أو الدليل التي تحتوي على اقتباسات مفردة أو مزدوجة ، يتم التعامل مع المسافات أو الخطوط الجديدة بشكل صحيح. يأتي اختبار -name قبل اختبار -type لتجنب الاضطرار إلى استدعاء stat (2) على كل ملف.

تجد . -نسخة ملف f -exec "{}" \؛

يشغل `ملف 'على كل ملف في أو أسفل الدليل الحالي. لاحظ أن الأقواس محاطة بعلامات اقتباس مفردة لحمايتها من التفسير على شكل علامات الترقيم النصية. وبالمثل يتم حماية الفاصلة المنقوطة عن طريق استخدام شرطة مائلة للخلف ، على الرغم من '؛ يمكن أن تستخدم في هذه الحالة أيضا.

find / \ (-perm -4000 -fprintf /root/suid.txt '٪ # m٪ u٪ p \ n' \)، \ \ (-size + 100M -fprintf /root/big.txt '٪ -10s٪ p \ n '\)

تعبر نظام الملفات مرة واحدة فقط ، مع إدراج ملفات وسيطات setuid في /root/suid.txt وملفات كبيرة في /root/big.txt .

find $ HOME -mtime 0

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

0 ، سيضطر الملف إلى إجراء تعديل في الماضي وهو أقل من 24 ساعة.

تجد . على مستوى 664

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

تجد . -pmm -664

البحث عن الملفات التي لديها إذن القراءة والكتابة لمالكها ومجموعتها ، والتي يمكن للمستخدمين الآخرين قراءتها ، دون النظر إلى وجود أي بتات إذن إضافية (على سبيل المثال ، بت للتنفيذ). هذا سوف يتطابق مع ملف يحتوي على وضع 0777 ، على سبيل المثال.

تجد . -المطاف / 222

ابحث عن الملفات القابلة للكتابة من قبل شخص ما (مالكها ، أو مجموعتها ، أو أي شخص آخر).

تجد . -pmm / 220 العثور عليها. -pier / u + w، g + w find. -pm = u = w، g = w

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

تجد . العثور على -2020 . -perm -g + w، u + w

كل من هذه الأوامر تفعل الشيء نفسه. البحث عن الملفات القابلة للكتابة من قبل مالكها ومجموعتها.

تجد . -pm -444 -perm / 222! العثور على -111 / . -perm -a + r -perm / a + w! -pier / a + x

هذان الأمران يبحثان عن الملفات التي يمكن قراءتها للجميع (-perm -444 أو -perm -a + r) ، على الأقل على مجموعة بت الكتابة (-permm / 222 أو -perm / a + w) ولكنها غير قابلة للتنفيذ لأي شخص (! -بيرم / 111 و! -perm / a + x على التوالي)

هام: استخدم الأمر man ( ٪ man ) لمعرفة كيفية استخدام أمر ما على جهاز الكمبيوتر الخاص بك.