شرح أمر find في Linux وطرق استخدامه

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

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

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

مقدمة في أمر find

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

كيفية عمل find

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

لنفترض أنك تريد البحث عن ملف نصي اسمه example.txt في الدليل الحالي. فيمكنك القيام بذلك باستخدام الأمر التالي:

find . -name "example.txt"

في هذا المثال، . هو الدليل الحالي و-name “example.txt” هو معيار البحث الذي يحدد أن البحث سيكون عن ملف اسمه example.txt

استخدام find للتوثيق والتطبيقات

واحدة من الاستخدامات الشائعة لأمر find هي البحث عن ملفات محددة في هيكل الملفات الهائل. يمكن استخدام الأمر لإيجاد ملفات تحتوي على اسم معين، ملفات من نوع معين، أو ملفات تحُدثت مؤخرًا.

على سبيل المثال، إذا كنت ترغب في العثور على جميع ملفات النصوص (txt.) في الدليل الحالي والمجلدات الفرعية:


find . -type f -name "*.txt"

في هذا المثال، -type f يحدد البحث عن الملفات فقط، و-name “*.txt” يحدد البحث عن ملفات بنمط .txt

البحث عن ملفات قديمة

يمكن استخدام أمر find للبحث عن ملفات قديمة لم تُعدَلْ منذ فترة زمنية معينة. هذا مفيد جدًا في إدارة الملفات القديمة والتحقق من تحديثها.

على سبيل المثال، إذا كنت ترغب في العثور على جميع الملفات التي لم َتْعُدْ لأكثر من 30 يومًا في الدليل /var/log:


find /var/log -type f -mtime +30

في هذا المثال، -mtime +30 يحدد البحث عن الملفات التي لم تستخدم لأكثر من 30 يومًا.

استخدام find للربط بين الأوامر

يمكن دمج أمر find مع أوامر أخرى لتنفيذ مهام متقدمة وشاملة. على سبيل المثال، يمكنك حذف جميع الملفات المؤقتة (*.tmp) التي لم تستخدم لأكثر من 7 أيام.


find /tmp -name "*.tmp" -mtime +7 -exec rm {} \;

في هذا المثال، find /tmp -name “*.tmp” -mtime +7 -exec rm {} \; يحدد البحث عن جميع الملفات المؤقتة (*.tmp) التي لم تعدل لأكثر من 7 أيام ثم تنفيذ أمر rm لحذف هذه الملفات.

تحويل نتائج find إلى أوامر أخرى

يسمح لك find أيضًا بتحويل نتائج البحث إلى أوامر أخرى للمعالجة الإضافية. على سبيل المثال، يمكنك استخدام المخرجات من find لتحرير الملفات باستخدام sed أو awk.

على سبيل المثال، إذا كنت ترغب في طباعة الأسطر التي تحتوي على كلمة “error” في جميع ملفات السجل (.log):


find /var/log -type f -name "*.log" -exec grep "error" {} \;

في هذا المثال، find /var/log -type f -name “*.log” -exec grep “error” {} \; يحدد البحث عن جميع ملفات السجل (.log) ثم تنفيذ أمر grep لطباعة الأسطر التي تحتوي على كلمة “error”.

استخدام find مع الأذونات

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

على سبيل المثال، إذا كنت ترغب في العثور على جميع الملفات التي تنتمي إلى مستخدم user1:


find /home -user user1

في هذا المثال، /home هو الدليل الأساسي و-user user1 يحدد البحث عن الملفات التي تنتمي إلى مستخدم user1

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

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

على سبيل المثال، إذا كنت ترغب في العثور على جميع الملفات التي يمكن للجميع قراءتها:


find /home -perm -o+r

في هذا المثال، -perm -o+r يحدد البحث عن الملفات التي يمكن للجميع قراءتها.

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

ماهر المخلوفي
ماهر المخلوفي

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

المقالات: 43