ابحث عن أمثلة لينكس. أمر البحث: طريقة فعالة للعثور على الملفات في Linux. ابحث عن مسار بحث الأوامر

09.07.2020

تم التحديث: 11/02/2019 تاريخ النشر: 25/07/2016

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

بناء الجملة العام

يجد<где искать> <опции>

<где искать> — المسار إلى الدليل الجذر حيث يبدأ البحث. على سبيل المثال، ابحث عن /home/user - ابحث في الدليل المناسب. بالنسبة للدليل الحالي، تحتاج إلى استخدام نقطة ".".

<опции> — مجموعة من القواعد التي يتم من خلالها إجراء البحث.

* بشكل افتراضي، يكون البحث متكررًا. للبحث في دليل محدد، يمكنك استخدام الخيار أقصى عمق.

وصف الخيارات

خيار وصف
-اسم البحث بالاسم.
-اسم بحث حساس لحالة الأحرف بالاسم.
-يكتب

نوع كائن البحث. الخيارات الممكنة:

  • و - ملف؛
  • د - الدليل؛
  • ل - الرابط؛
  • ف - الأنابيب؛
  • ق - المقبس.
-مقاس حجم الكائن. يتم تحديده في كتل بحجم 512 بايت أو ببساطة بالبايت (بالحرف "c").
-mtime وقت تعديل الملف. مبين في أيام.
-مممين تغيير الوقت بالدقائق.
- وقت وقت آخر وصول إلى الكائن بالأيام.
-أمين وقت آخر مكالمة بالدقائق.
-ctime آخر تعديلمالك أو حقوق الكائن في أيام.
-كمين تغيير المالك الأخير أو الإذن خلال دقائق.
-مستخدم البحث حسب المالك.
-مجموعة حسب المجموعة.
-موج الشعر بإستمرار مع حقوق وصول معينة.
-عمق يجب ألا يبدأ البحث من الجذر، بل من الدليل المتداخل الأعمق.
-العمق الأقصى الحد الأقصى لعمق البحث في الكتالوجات. -أقصى عمق 0 - البحث فقط في الدليل الحالي. بشكل افتراضي، يكون البحث متكررًا.
-تقليم يستبعد الدلائل المدرجة.
-جبل لا تنتقل إلى أنظمة الملفات الأخرى.
-التعبير العادي بالاسم مع التعبير العادي.
-regextype<тип> نوع التعبير العادي
يظهر المحتوى روابط رمزية(الارتباط الرمزي).
-فارغ البحث عن الدلائل الفارغة.
-يمسح احذف ما تم العثور عليه.
-ls الإخراج كـ ls -dgils
-مطبعة أظهر ما تم العثور عليه.
-طباعة0 المسار إلى الأشياء التي تم العثور عليها.
-تنفيذي<команда> {} \; قم بتنفيذ الأمر على الشخص الذي تم العثور عليه.
-نعم قم بإصدار مطالبة قبل تنفيذ -exec.

يمكن الحصول على المجموعة الكاملة من الخيارات الحالية باستخدام الأمر رجل يجد.

أمثلة على استخدام البحث

ابحث عن الملف بالاسم

البحث عن / -اسم "file.txt"

* ف في هذا المثالسيتم البحث عن ملف اسمه ملف.txtفي جميع أنحاء نظام الملفات بأكمله بدءًا من الجذر / .

البحث عن ملف بجزء من اسمه:

البحث عن / -اسم "*.tmp"

* سيبحث هذا الأمر عن كافة المجلدات أو الملفات الموجودة في الدليل الجذر /, تنتهي ب .tmp

ابحث عن كافة الملفات أو المجلدات التي تبدأ بـ جلسة_وتنتهي ب قرص مضغوط

يجد . -الاسم "sess_*" -a -الاسم "*cd"

* -أ:منطقي و، -س:منطقي أو.

البحث حسب التاريخ

1. ابحث عن الملفات التي تم تغييرها منذ عدد معين من الأيام:

يجد . -النوع f -mtime +60

* سيبحث هذا الأمر عن الملفات التي تم تغييرها منذ أكثر من 60 يومًا.

2. البحث عن الملفات باستخدام أحدث. هذا الخيارمتوفر من الإصدار 4.3.3 (يمكنك مشاهدته باستخدام الأمر العثور على --version).

أ) تاريخ التغيير:

يجد . -النوع f -newermt "2019-11-02 00:00"

* سيظهر جميع الملفات التي تغيرت منذ 11/02/2019 الساعة 00:00.

يجد . -نوع f-newermt2019-10-31! -جديد 2019-11-02

* سيتم العثور على جميع الملفات التي تم تغييرها بين 31/10/2019 و 01/11/2019 (ضمناً).

ب) تاريخ تقديم الطلب:

يجد . -نوع f-newerat 2019-10-08

* جميع الملفات التي تم الوصول إليها منذ 10/08/2019.

يجد . -نوع f-newerat2019-10-01 ! -أحدث 2019-11-01

* جميع الملفات التي تم الوصول إليها في أكتوبر.

ج) تاريخ الإنشاء:

يجد . -النوع f -newerct 2019-09-07

يجد . -نوع f -newerct 2019-09-07 ! -newerct "2019-09-09 07:50:00"

* الملفات التي تم إنشاؤها من 09/07/2019 00:00:00 إلى 09/09/2019 07:50

حسب النوع

ابحث فقط عن الملفات الموجودة في الدليل الحالي وجميع مجلداته الفرعية:

* و- البحث عن الملفات فقط.

البحث عن طريق الأذونات

نحن نبحث عن كل ما هو مناسب للقراءة والكتابة:

ابحث عن / - بيرم 0666

نجد الملفات التي لا يستطيع الوصول إليها سوى المالك:

ابحث عن / - بيرم 0600

البحث عن ملف حسب المحتوى

Find / -type f -exec grep -i -H "content" () \;

* في هذا المثال، يتم إجراء بحث متكرر لجميع الملفات الموجودة في الدليل / ويتم عرض قائمة بتلك التي تحتوي على السلسلة محتوى.

مرتبة حسب تاريخ التعديل

العثور على / نوع البيانات f -printf "%TY-%Tm-%Td %TT %p\n" | فرز -ص

* سيجد الأمر جميع الملفات الموجودة في الدليل /بيانات، سيضيف تاريخ التعديل إلى الاسم ويفرز البيانات حسب الاسم. ونتيجة لذلك، أفهم أن الملفات ستسير بالترتيب الذي تم تغييرها به.

ابحث عن /home/user/* -type d -exec chmod 2700 () \;

* في هذا المثال نقوم بالبحث في جميع الدلائل ( اكتب د) في الدليل /الصفحة الرئيسية/المستخدموتحديد الحقوق لهم 2700 .

التنظيف المقرر

فريق يجدمناسب للاستخدام لإزالة الملفات القديمة تلقائيًا.

افتح مهمة cron للتحرير:

وأضف:

0 0 * * * /bin/find /tmp -mtime +14 -exec rm() \;

* في هذا المثال نقوم بحذف كافة الملفات والمجلدات من الدليل / تمب،المئات أقدم 14 أيام. يتم تشغيل المهمة كل يوم في 00:00 .
* ابحث عن المسار الكامل للملف القابل للتنفيذ باستخدام الأمر التي تجد- في مختلف أنظمة يونيكسيمكن أن يكون موجودا في أماكن مختلفة.

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

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

البحث عن المسار - الخيارات

المسار هو الدليل الذي تريد البحث فيه. على سبيل المثال، يمكن أن تكون هذه القيم مثل هذا:
. - الدليل الحالي
/ - الدليل الجذر
~ - الدليل الرئيسي

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

الخيارات الرئيسية:
-اسم- البحث بالاسم، وضبط نمط البحث؛
-مستخدم- البحث عن الملفات التي تخص مستخدم معين؛
-مجموعة- البحث عن الملفات التي تنتمي إلى مجموعة معينة.
-موج الشعر بإستمرار- البحث عن الملفات عن طريق وضع الوصول؛
-يكتب- البحث عن الملفات حسب النوع، قائمة الأنواع:

  • ب- ملف كتلة خاص؛
  • د- كتالوج.
  • ج- ملف رمز خاص؛
  • و- ملف عادي؛
  • ل- الارتباط الرمزي؛
  • ص- الأنبوب المسمى؛
  • ق- المقبس.

-الحجم ن- البحث عن الملفات ذات الحجم n من الوحدات؛
-mtime -n +n- البحث عن الملفات حسب تاريخ التعديل، قبل أقل (-) أو أكثر (+) من الأيام.

دعونا نحاول البحث عن الملفات، ومحاكاة المواقف المختلفة.
دعنا نعثر على الملفات الموجودة على جهاز قابل للإزالة متصل بـ USB ومثبت مسبقًا في النظام.

البحث عن الملفات حسب الامتداد:

$ ابحث عن /mnt/usb -الاسم "*.mp3" -اطبع

نتيجة لتنفيذ هذا الأمر، سيتم إجراء بحث في الدليل /mnt/usb– هذا هو الدليل الذي تم تركيب الجهاز فيه. سيتم إجراء البحث على جميع الملفات (*) ذات الامتداد .mp3.
يمكن تغيير قناع البحث بمرونة تامة، على سبيل المثال، يمكنك تعيين كلمة أساسية يبدأ بها اسم الملف والبحث عنها.

البحث عن الملفات عن طريق بدء الكلمة الرئيسية:

$ ابحث عن ~ -اسم "التكوين*" -طباعة

ستظهر النتيجة قائمة بالملفات التي تم العثور عليها بدءًا من الكلمة الرئيسية التكوين.
إحدى نقاط قوة الأمر هي القدرة على البحث حسب التعبير العادي. للتوضيح، سنبحث عن الملفات التي تبدأ بالأحرف اللاتينية من "a" إلى "j".

البحث عن الملفات باستخدام نمط التعبير العادي:

$ ابحث عن / -الاسم "*" -طباعة

وفقًا للنمط المحدد، سيتم البحث عن جميع الملفات الموجودة في النظام بدءًا من الحروف "a" إلى "j".

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

البحث عن الملفات ذات وضع الوصول 755:

العثور على $. - بيرم 775 - طباعة

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

البحث عن الملفات ذات الأذونات لمجموعة:

العثور على $. -بيرم -070 -طباعة

يمكن استبدال علامة الواصلة بعلامة زائد، وهذا سيسمح لك بالبحث عن الملفات التي تحتوي على واحدة على الأقل من مجموعة بتات الأذونات المحددة، وسيتم تجاهل البتات المتبقية.

في المثال التالي، فكر في البحث عن ملفات تخص مستخدمًا أو مجموعة معينة.

البحث عن ملفات مستخدم معين:

$ ابحث عن / - مسؤول المستخدم - الطباعة

نتيجة البحث سيتم العثور على الملفات التي تخص المستخدم مسؤل.

البحث عن الملفات التي تنتمي إلى مجموعة مستخدمين معينة:

$ البحث عن / - مجموعة الروبوتات - الطباعة

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

$ البحث / -nouser –print $ البحث / -nogroup –print

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

البحث عن الروابط الرمزية:

$ ابحث عن / إلخ - اكتب l -print

سيتم إجراء البحث في الدليل /etc، حيث سيتم تحديد جميع الروابط الرمزية.

قد يكون من الضروري عرض قائمة الدلائل الفرعية في دليل معين؛ لمثل هذه المهام هناك الأمر التالي.

عرض الدلائل الفرعية في الدليل:

$ ابحث عن /mnt/usb - النوع d - الطباعة

ستعرض الشاشة قائمة بالأدلة الموجودة في الدليل /mnt/usb. الآن دعنا ننتقل إلى الخيار التالي، وهو القدرة على البحث عن الملفات ذات الحجم المحدد.

البحث عن الملفات حسب الحجم:

العثور على $. - مقاس 2000 ك - طباعة

سيتم إجراء بحث عن الملفات التي يبلغ حجمها 2000 كيلو بايت؛ ويمكن أيضًا تحديد الأحجام بالميجابايت؛ ولهذا، بدلاً من الحرف "k"، يجب عليك تحديد الحرف "M".

في المثال التالي، سوف نستخدم القدرة على البحث عن الملفات حسب وقت تعديلها. لهذه الأغراض سوف نستخدم الخيار -mtime.

البحث عن الملفات التي تم تعديلها في آخر يومين:

$ ابحث عن /var/www/html -mtime +2 -print

سيتم إجراء البحث في الدليل /فار/www/html، وسيقوم بالبحث عن الملفات التي تغيرت خلال اليومين الماضيين. ربما يكون أحد خيارات البحث الأكثر أهمية وملاءمة. يمكنك أيضًا البحث حسب تاريخ التعديل بالشرط المعاكس. دعنا نحاول العثور على الملفات في الدليل التي لم تتغير لمدة 5 أيام.

البحث عن الملفات التي لم تتغير لمدة 5 أيام:

$ ابحث عن /var/www/html -5 –print

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

قد تكون على دراية بالمشكلة التالية: لا يمكنك العثور على ملف، ولكنه موجود في مكان ما على جهاز الكمبيوتر. ثم أمر البحث مناسب.

أنت تسأل: كيفية استخدامه؟ هناك صفحة رجل ضخمة لهذا البرنامج، وسوف ننظر في بعض الحالات الشائعة.

يمكنك البدء بالأبسط: إذا كنت تعرف اسم الملف، فيمكنك العثور عليه بسهولة! كل ما عليك فعله هو كتابة بحث وتحديد اسم ملف محدد!

ملفات بحث Linux بالاسم

هذا هو واحد أمر بسيط:

البحث عن اسم الحب
إذا كان هناك ملف باسم "love"، فسيقوم أمر البحث بتحديد موقع الملف أو ملفات متعددة مثل هذا:

Jzb@kodos:~$ ابحث عن -name love ./projects/love jzb@kodos:~$
على سبيل المثال، سوف نبحث عن جميع الملفات بتنسيق mp3 ونقوم بعملها القائمة الكاملةفي الملف:

ملف /home/artix -iname ".mp3"> ./list.txt

البحث عن الملفات حسب جزء من اسمها

بعد ذلك، سنجد الملفات بتنسيق txtx، وليس الملفات فقط، بل الملفات النصية التي تحتوي على كلمة “LEON”:

ملف /home/artix -iname ".txt" -exec grep -H "LEON" "()" \; > ./list.txt
عظيم، لدينا بالفعل اتضح أنه يتم البحث عن ملفات Linux بالكلمة"ليون". بنفس الطريقة، يمكنك إزالة الأشياء غير الضرورية، وفي الخلفية، حتى تتمكن من مواصلة العمل:

ملف /home/artix -iname ".bak" -exec rm "()" \; &
وهذا يجعل حياتنا أسهل. هذه هي أبسط الأشياء، ولكن هناك الكثير من الأشياء المفيدة فيها.

البحث عن الملفات حسب التاريخ لينكس

البحث ./ -mmin -10 # تاريخ التعديل أقل من 10 دقائق البحث ./ -mtime +1 # تاريخ التعديل أكثر من يوم البحث ./ -type f -atime +10 # وقت الوصول أكثر من 10 أيام البحث ./ -type f -amin - 10 #تاريخ التعديل آخر 10 دقائق

البحث عن نص في ملفات Linux

غالبًا ما يحدث أنك تحتاج إلى البحث عن نص في ملفات لينكس. سأقدم مثالين للبحث عن الملفات: (linux، freebsd) تحتاج إلى جزء من النص في الملفات:

# find /var/named/ -type f -exec grep "MX" () \; serversnetwork.info. 14400 في بريد MX 10
وواحد آخر:

# grep -rl "MX" /var/named/ /var/named/serversnetwork.info.db

البحث عن الملفات حسب الحجم
في بعض الأحيان، يمكنك استخدام أوامر أخرى للبحث عن ملفات Linux. على سبيل المثال، لاحظت كيف أن بعض الأقسام بدأت في زيادة الحجم على جهاز الكمبيوتر الخاص بك. للعثور على الملف المرتبط به، أو المجلد الممتلئ، يمكنك استخدام الأمر التالي:

البحث عن -حجم 95K.
سيؤدي هذا إلى العثور على ملفات بحجم 95 كيلو بايت. ولكن هذا الخيار نادرا ما يستخدم. المزيد من أوامر الاستخدام التي يمكن استخدامها للعثور على ملف أكبر أو أصغر الحجم المحدد. على سبيل المثال الخيار:

البحث عن الحجم +150 ألف
يجب أن تظهر الملفات التي يزيد حجمها عن 150 كيلو بايت. والخيار

ابحث عن -الحجم -94 ك
كل ما هو أقل من 94K.

تبحث الدالة -size عن الملفات ذات الحجم المحدد وتبدو هكذا عند تنفيذها:

العثور على $. - مقاس 3500 ك - طباعة
هذا الخيار سوف تنفذ في بحث لينكسالملفات وسوف تظهر على الشاشةتلك التي يبلغ حجمها 3500 كيلو بايت والموجودة في هذا المجلد. إذا كنت بحاجة إلى البحث عن ملفات أصغر من 250 كيلو بايت، فسيبدو الأمر كما يلي:

العثور على $. -الحجم -200 ك -الطباعة
إذا كنت بحاجة إلى العثور على ملفات حجمها أكبر من 555 ميغابايت، فسنستخدم الخيار:

$ البحث / -الحجم +555M -طباعة
ربما هذا هو المكان الذي سأنتهي فيه من كتابة مقالتي.

الآن قد تتمكن من البحث عن الملفات بنفسك، والبحث عن النص في ملفات Linux، والبحث عن الملفات حسب التاريخ!

شكرا للجميع، وداعا!

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

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

1) قم بإدراج جميع الملفات الموجودة في الدليل الحالي وأدلته الفرعية

لسرد جميع الملفات الموجودة في الدليل الحالي وأدلته الفرعية، يمكننا استخدام:

وبدلاً من ذلك، يمكننا أيضًا استخدام "العثور على". " والتي سوف تعطيك نفس النتيجة.

2) ابحث عن كافة الملفات والأدلة في دليل العمل الحالي الخاص بك

إذا كنت بحاجة فقط إلى العثور على الدلائل، فيمكنك استخدام:

العثور على $. -النوع د

للعثور على الملفات فقط وليس الدلائل:

العثور على $. -نوع و

3) قائمة كافة الملفات في دليل معين

للعثور على الملفات من دليل معين، عليك إدخال:

$ البحث عن /الجذر

سيبحث هذا الأمر عن كافة الملفات الموجودة في الدليل /root.

4) ابحث عن الملف بالاسم في الدليل

للبحث عن ملف بالاسم في دليل محدد، أدخل:

$ ابحث عن / اسم الجذر "linuxtechi.txt"

سيبحث هذا الأمر عن ملف linuxtechi.txt في الدليل /root. يمكننا أيضًا العثور على جميع الملفات ذات الامتداد .txt:

$ ابحث عن /اسم الجذر "*.txt"

5) ابحث عن الملف في أدلة متعددة

للبحث عن الملفات في أدلة متعددة، أدخل:

$ ابحث عن /جذر /إلخ -اسم "linuxtechi.txt"

باستخدام هذا الأمر، يمكننا البحث عن ملف linuxtechi.txt في المجلدات /root & /etc.

باستخدام هذا الأمر يمكننا العثور على ملف linuxtechi.txt في المجلدين /root و/etc.

6) ابحث عن الملف بالاسم، غير حساس لحالة الأحرف

ابحث عن الملفات غير الحساسة لحالة الأحرف باستخدام -iname:

$ ابحث عن /root -iname "Linuxtechi.txt"

ونتيجة لذلك، سوف تحصل على كافة الملفات المسماة linuxtechi.txt. في هذه الحالة، قد يكون هناك عدة ملفات، حيث أن linuxtechi.txt سيكون مساويًا لـ LINUXTECHI.txt.

7) ابحث عن جميع أنواع الملفات بخلاف تلك المذكورة

لنفترض أننا بحاجة إلى العثور على جميع الملفات بخلاف نوع ملف معين. ولتحقيق ذلك ندخل:

$ ابحث عن /جذر -وليس -اسم "*.txt"

8) البحث عن الملفات بناءً على معايير متعددة

يمكننا الجمع بين أكثر من شرط عند البحث عن الملفات. لنفترض أننا بحاجة إلى ملفات ذات امتدادات .txt و.html:

العثور على $. -التعبير العادي ".*\.\(txt\|html\)$"

9) البحث عن الملفات باستخدام الشرط أو

يمكننا أيضًا الجمع بين عدة معايير بحث، مما سيؤدي إلى البحث عن الملفات بناءً على استيفاء أحد الشروط. يتم ذلك باستخدام عامل التشغيل OR:

$ ابحث عن -الاسم "*.txt" -o -الاسم "linuxtechi*"

10) البحث عن الملفات بناء على الأذونات

للعثور على الملفات ذات الوصول المحدد، استخدم -perm:

$ ابحث عن / جذر - نوع f - بيرم 0777

11) البحث عن كافة الملفات المخفية

للبحث الملفات المخفيةفي الدليل أدخل:

$ ابحث عن ~ -اكتب اسم f ".*"

12) ابحث عن جميع الملفات باستخدام SGID

للبحث عن الملفات ذات بتات SGID، قم بتشغيل الأمر:

العثور على $. -بيرم /ز=س

13) ابحث عن جميع الملفات التي تحتوي على SUID

للبحث عن الملفات ذات بتات SUID نستخدم:

العثور على $. - بيرم / ش = ق

14) البحث عن كافة الملفات القابلة للتنفيذ

للبحث فقط الملفات القابلة للتنفيذيدخل:

العثور على $. -بيرم /أ=س

15) البحث عن ملفات للقراءة فقط

بالإضافة إلى ذلك، يمكنك استخدام أمر البحث للعثور على الملفات للقراءة فقط:

$ ابحث عن /root -perm /u=r

16) البحث عن كافة ملفات المستخدم

للبحث عن ملفات مستخدم معين، استخدم الأمر التالي:

العثور على $. - مستخدم لينكستيتشي

17) البحث عن كافة ملفات المجموعة

للبحث عن ملفات مجموعة معينة، استخدم:

العثور على $. -مجموعة أباتشي

18) البحث عن كافة الملفات ذات حجم معين

إذا أردنا البحث عن حجم من نعرفه، فيمكننا استخدام -size :

$ العثور على / -الحجم -2M

19) البحث عن كافة الملفات في نطاق الحجم

إذا كنا نبحث عن ملف لا نعرف حجمه، ولكننا نعرف حجمه التقريبي، أو نحتاج ببساطة إلى تحديد مجموعة من الملفات في نطاق حجم معين، فيمكننا إدخال:

$ ابحث عن / -الحجم +2M -الحجم -5M

يمكنك استخدام أمر البحث عند البحث عن ملفات أكبر من 50 ميجا بايت على سبيل المثال:

$ العثور على / - الحجم +50M

20) البحث عن الملفات المعدلة منذ N أيام

على سبيل المثال، نريد تحديد موقع جميع الملفات التي تم تعديلها منذ 8 أيام. يمكننا تحقيق ذلك باستخدام خيار "-mtime" في أمر البحث

على سبيل المثال، يمكننا العثور على جميع الملفات التي تم تحريرها منذ 8 أيام. يتم ذلك باستخدام الأمر -mtime:

$ العثور على / -mtime 8

21) ابحث عن الملفات التي تم الوصول إليها منذ N أيام

يمكنك العثور على الملفات التي تم تضمينها قبل 8 أيام باستخدام -atime:

$ البحث / -atime 8

22) البحث عن كافة الملفات والأدلة الفارغة

للعثور على الجميع ملفات فارغةفي النظام ندخل:

$ ابحث عن / - نوع f - فارغ

ولعرض الدلائل الخاصة بهم:

$ ابحث عن ~/ -اكتب d -فارغ

23) البحث عن أكبر وأصغر الملفات

لعرض قائمة بالملفات الأكبر أو الأصغر حجمًا، نستخدم find جنبًا إلى جنب مع النوع، وإذا كنا بحاجة إلى عرض "الأكثر 3" ملفات، فإننا نستخدم أيضًا head .

لإخراج ثلاثة ملفات من الدليل الحالي، أدخل:

العثور على $. -نوع f -exec ls -s () \; | فرز -ن -ص | الرأس -3

وبطريقة مماثلة، يمكننا عرض أصغر الملفات في الدليل الحالي:

العثور على $. -نوع f -exec ls -s () \; | فرز -ن | الرأس -3

24) ابحث عن جميع الملفات ذات الوصول المحدد وقم بتغييرها إلى 644 (أو أي شيء آخر)

يمكن أن يقدم أمر البحث حالات استخدام متقدمة. على سبيل المثال، يمكننا تغيير جميع الأذونات لـ 644 ملفًا محددًا إلى 777. للقيام بذلك، نقوم بتنفيذ ما يلي:

$ find / -type f -perm 644 -print -exec chmod 777 () \;

25) ابحث عن جميع الملفات التي تطابق معايير معينة وقم بحذفها

عاجلاً أم آجلاً قد تحتاج إلى حذف بعض الملفات. إذا حدث هذا، فأدخل:

$ find / -type f -name "linuxtechi.*" -exec rm -f () \;

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

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

البحث عن الملف بالاسم في قاعدة البيانات.
يمكن استخدام أمر تحديد الموقع للبحث عن الملف (الملفات) بناءً على جزء من اسم الملف. يقوم الأمر بفحص قاعدة بيانات الأسماء وإرجاع المسار إلى الملف (الملفات) الجاري البحث عنها. نوصي بتشغيل الأمر باستخدام الخيار -i: حدد موقع -i لإجراء بحث غير حساس لحالة الأحرف.
مثال:

subsanek@subsanek-laptop:~$ تحديد موقع -i .ogg
/home/subsanek/unknown - غير معروف/01 - غير معروف 1 - ؟؟؟.ogg
/usr/local/Zend/ZendStudio-7.1.2/docs/PHPmanual/book.oggvorbis.html
/usr/local/Zend/ZendStudio-7.1.2/docs/PHPmanual/intro.oggvorbis.html
/usr/share/kde4/apps/bball/bounce.ogg
/usr/share/kde4/apps/klettres/en_GB/alpha/a.ogg
/usr/share/kde4/apps/klettres/en_GB/alpha/b.ogg
/usr/share/kde4/apps/klettres/en_GB/alpha/c.ogg
(مقطوع)


- استدعاء الأمر الذي وجد جميع الملفات الموجودة في النظام بامتداد ogg.
يقوم بتحديد موقع عمليات البحث عن الملفات بسرعة كبيرة، ولكنه يقوم فقط بمسح قائمة الأسماء من قاعدة البيانات وإذا تم إنشاء الملف مؤخرًا، فهناك احتمال كبير بعدم العثور عليه.
تحديث قاعدة البيانات.
يمكنك تحديث قاعدة بيانات أوامر تحديد الموقع باستخدام الأمر (كمستخدم متميز):
محدثب
مخرجات يمكن قراءتها بواسطة الإنسان.
في كثير من الأحيان، يمكن أن ينتج أمر تحديد الموقع عدة آلاف من النتائج التي تومض ببساطة أمام الشاشة ولا تفعل شيئًا لعينيك، لتجنب ذلك، يمكنك إعادة توجيه نتيجة الإخراج إلى حاوية:
حدد موقع -i .ogg | أقل
يمكنك أيضًا تعيين عدد النتائج التي تريد عرضها باستخدام الخيار -n:
حدد موقع -i .ogg -n 10
- سيتم عرض النتائج العشرة الأولى.

البحث عن الملفات باستخدام المسح الحقيقي.
يقوم أمر البحث بالمسح نظام الملفاتللبحث عن ملف، مما يجعل هذه الأداة بطيئة ولكنها فعالة.
للبحث بالاسم، يجب عليك تحديد مفتاح -name
مثال:
العثور على -اسم filename.txt
بشكل افتراضي، ابحث عن عمليات البحث بشكل متكرر في الدليل الحالي.

البحث عن نص باستخدام جزء من النص.
يمكن أن يخدم الأمر grep الأسطوري أي غرض تقريبًا. أحب استخدامه ليس فقط للبحث الملفات الضروريةفي الدليل المصدر. يمكنك أيضًا استخدام grep للبحث عن التعبيرات العادية.
النموذج الأولي للأوامر:
grep "نمط البحث" file_to_search
مثال:
grep -R "نص" /
-الأمر سوف يبحث بشكل متكرر في الكل ملفات نصيةنص كلمة النظام.
لدى Grep عدد هائل من الخيارات التي قد تكون مطلوبة في كثير من الأحيان:

subsanek@subsanek-laptop:~$ grep --help
الاستخدام: grep [KEY]...النمط [ملف]...
ابحث عن PATTERN في كل ملف أو إدخال قياسي.
بشكل افتراضي، PATTERN هو تعبير عادي بسيط (BRE).
مثال: grep -i "hello World" Menu.h main.c

اختيار نوع التعبير العادي وتفسيره:
-E، --extension-regexp PATTERN - تعبير عادي ممتد (ERE)
-F، --fixed-regexp PATTERN - سلاسل ذات طول ثابت، محددة
رمز خط جديد
-G، --basic-regexp PATTERN - تعبير عادي بسيط (BRE)
-P، --نمط بيرل-regexp - التعبيرات العاديةلغة بيرل
-e, --regexp=PATTERN استخدم PATTERN للبحث
-f, --file=FILE يأخذ النمط من FILE
-i, --ignore-case تجاهل اختلاف الحالة
-w, --word-regexp PATTERN يجب أن يتطابق مع جميع الكلمات
-x, --line-regexp PATTERN يجب أن يتطابق مع السطر بأكمله
-z، --يتم فصل أسطر البيانات الخالية ببايت فارغ بدلاً من ذلك
حرف نهاية السطر

بالإضافة إلى ذلك:
-s, --no-messages تمنع رسائل الخطأ
-v، --revert-match حدد الأسطر غير المتطابقة
-V, --version طباعة معلومات الإصدار والخروج
- مساعدة في إظهار المساعدة والخروج
--mmap استخدم تعيين الذاكرة (mmap) كلما أمكن ذلك

التحكم في الإخراج:
-m, --max-count=NUM توقف بعد العدد المحدد من التطابقات
-b، - إزاحة طباعة البايت في
بايت
-n، --line-number رقم سطر الطباعة مع خطوط الإخراج
- إعادة تعيين المخزن المؤقت للخط المخزن بعد كل سطر
-H, --with-filename اطبع اسم الملف لكل تطابق
-h, --no-filename لا يبدأ الإخراج باسم الملف
--label=LABEL إخراج LABEL كاسم ملف لـ
المدخلات القياسية
-o, --only-matching يُظهر فقط جزء السلسلة الذي يطابق النمط
-q، --quiet، --silent يمنع كل المخرجات العادية
--binary-files=TYPE تفترض ذلك ملف ثنائييكتب:
ثنائي أو نص أو بدون تطابق.
-a، --text مثل --binary-files=text
-أنا نفس --binary-files=without-match
-d, --directories=ACTION كيفية التعامل مع الدلائل
يمكن قراءة العمل،
التكرار (بشكل متكرر)، أو التخطي (التخطي).
-D, --devices=ACTION كيفية التعامل مع الأجهزة وFIFOs والمآخذ
الإجراء يمكن أن يكون "قراءة" أو "تخطي"
-R، -r، --recursive مثل --directories=recurse
--include=F_TEMPLATE يعالج فقط الملفات المطابقة لـ F_TEMPLATE
--exclude=F_PATTERN تخطي الملفات والدلائل،
تندرج تحت F_TEMPLATE
--exclude-from=FILE تخطي الملفات المطابقة للنمط
ملفات من FILE
--exclude-dir=PATTERN أدلة تطابق PATTERN
سوف نفتقد
-L، --files-without-match تطبع فقط أسماء الملفات بدون تطابقات
-l, --files-with-matches تطبع فقط أسماء الملفات ذات التطابقات
-c, --count اطبع عدد التطابقات فقط
خطوط لكل ملف
-T، --initial-tab محاذاة مع علامات التبويب (إذا لزم الأمر)
-Z، --طباعة بايت فارغة 0 بعد اسم الملف

إدارة السياق:
-B, --before-context=NUM قم بطباعة عدد أسطر السياق السابق
-A، --after-context=NUM قم بطباعة عدد الأسطر من السياق اللاحق
-C، --context[=NUM] اطبع عدد أسطر السياق،
--اللون[=متى]،
--colour[=WHEN] استخدم العلامات للتمييز بين المطابقة
خطوط؛ عندما يمكن أن يكون دائمًا (دائمًا)،
أبدًا (أبدًا)، أو تلقائيًا (تلقائيًا)
--color، --color استخدم علامات التحديد لتمييز الخطوط المتطابقة
-U, --binary لا تقم بإزالة أحرف CR في نهاية السطر (MSDOS)
-u، --unix-byte-offsets إزاحة الإخراج كما لو لم تكن هناك سجلات مسجلة (MSDOS)

بدلاً من egrep، من المفترض تشغيل grep -E. بدلاً من fgrep، يفترض grep -F.
من الأفضل عدم تشغيله كـ egrep أو fgrep.
عندما لا يتم تحديد FILE، أو عندما يكون FILE -، تتم قراءة الإدخال القياسي.
إذا تم تحديد أقل من ملفين، فسيتم افتراض -h. عندما تجد
التطابقات، سيكون رمز الخروج من البرنامج 0، و1 إذا لم يكن كذلك
الأخطاء، أو إذا لم يتم تحديد الخيار -q، فسيكون رمز الخروج 2.