كيف يمكنني البحث عن ملف في Linux bash؟

Kyf Ymknny Albhth N Mlf Fy Linux Bash



نظام الملفات هو الشيء الرئيسي في أي نظام تشغيل لأنه يحتفظ بجميع بياناتك داخل الملفات والمجلدات بتنسيقات مختلفة. ماذا عن البحث في هذه الملفات عن طريق الصدفة الطرفية باستخدام بعض الأوامر؟ إذا لم تكن لديك أي فكرة عن بحث bash ، فهذه المقالة مخصصة لمساعدتك. سنناقش أوامر بسيطة لإجراء بحث في ملف باه. هيا بنا نبدأ. لنفترض أن لديك ملف bash مخزّنًا حاليًا في دليل العمل المنزلي لـ Ubuntu 20.04. سنقوم بإدراج جميع محتويات دليل العمل الحالي باستخدام تعليمات 'ls' على غلاف Ubuntu الطرفي. قد يكون من الممكن أن يكون ملف الاسم نفسه موجودًا في مواقع أخرى.

الطريقة 01: تحديد موقع

لنبدأ بأهم التعليمات الأساسية ، 'تحديد' ، للعثور على الملف بالاسم من نظامنا. تم تصميم الخيار '-c' لتعليمات 'تحديد الموقع' خصيصًا للحصول على العدد الإجمالي لملف معين في النظام. دعونا نلقي نظرة على الخيار الأول '-c' عند استخدامه ضمن التعليمات مع اسم الملف 'new.sh'. تقوم بإرجاع إجمالي 5 ملفات بهذا الاسم.









إليك الخيار '-n' لتعليمات 'تحديد الموقع' لعرض عدد السجلات لملف معين على شاشة جهازك وفقًا لاختيار المستخدم. تحتاج إلى ذكر الرقم في هذا الأمر لعرض العدد المحدد من سجلات الملف. أثناء وجودنا في الدليل الرئيسي ، قمنا بتشغيل هذه التعليمات باستخدام الخيار 'n' والقيمة 1 لعرض سجل واحد لنتيجة البحث الخاصة بالملف 'new.sh'. تقوم بإرجاع السجل الفردي لمسار الملف لهذا الملف. سيكون هذا المسار هو الأقرب إلى الدليل الرئيسي أو المجلد الجذر ، على سبيل المثال /home/Linux/new.sh.







عندما استخدمنا هذه التعليمات مع العدد الإجمالي المحدث '3' للخيار '-n' لعرض نتيجة البحث عن الملف 'new.sh' ، فإنها تُرجع إجمالي 3 سجلات على شاشة shell الخاصة بنا. يظهر أن الملف موجود داخل مجلد المهملات أيضًا.



عند تشغيل الأمر 'locate' باستخدام الخيار '-n' للقيمة 5 ، حصلنا على 5 سجلات بحث للملف 'new.sh'. يوجد ملف آخر باسم 'new.sh.swp' في دلائلنا. أيضًا ، يوجد ملف الاسم نفسه في دليل 'var' لنظام ملفات Ubuntu.

يمكن أن يقوم الخيار '-b' في تعليمات 'locate' بالبحث عن ملف الاسم الدقيق من الدلائل الخاصة بك. لذلك ، يجب أن نستخدمه مع اسم الملف بفاصلات مقلوبة واحدة كما هو موضح. يعطي ما مجموعه 3 سجلات لأن ملف الاسم نفسه تم تحديد موقعه في 3 مواقع فقط.

يمكن أيضًا استخدام تعليمات 'تحديد الموقع' الخاصة بـ Linux للحصول على المعلومات المتعلقة بقاعدة البيانات الحالية. تحتاج إلى استخدام الخيار '-S' معه ، وسيعيد لك المسار إلى قاعدة البيانات ، والعدد الإجمالي للأدلة والملفات على نظامك ، والعدد الإجمالي للبايت في أسماء الملفات ، وعدد البايتات لتخزين سجلاتنا كما هي معروضة.

الطريقة 2: البحث عن ملفات

توجد تعليمات 'find' في نظام Linux الخاص بنا والتي يمكن استخدامها للبحث عن أي ملف معين. كما جاء بالعديد من الخيارات لعرض نتائج مختلفة. الخيار الأول هو خيار '-name' للبحث عن ملف باسمه في فاصلتين مقلوبتين. يمكنك استخدام هذا الخيار بجانب المسار إلى دليل ما للبحث عن ملف. إذا كنت لا تريد استخدام المسار ، فاتركه بعلامة '.' كما فعلنا أدناه. عرض ما مجموعه 3 سجلات بنفس ملف الاسم.

يمكنك أيضًا استخدام المسار الصريح لفحص الملف فيه. هنا قدمنا ​​مسارًا إلى مجلد 'سطح المكتب'. يعطينا السجل الفردي لمطابقة تامة لاسم الملف 'new.sh'.

لنفترض أنك تريد البحث عن ملف روابط رمزية لامتدادات '.sh' للملفات. تحتاج إلى استخدام الخيار '-L' والمسار وخيار '-name' في الأمر. يتم استخدام '*' في مواصفات الاسم للبحث عن 'جميع' ملفات bash بامتدادات '.sh'. تقوم بإرجاع ما مجموعه 4 سجلات على شاشتنا.

عند استخدام المسار '/ etc' في تعليمة 'find' مع خيار '-L' ، فإنه يُرجع العديد من السجلات لملفات bash. بعضها مفتوح للاستخدام من قبل أي شخص ، والبعض الآخر غير مسموح به.

بالطريقة نفسها ، استخدمنا تعليمة 'find' مع خيار '-L' للبحث في جميع ملفات 'txt' من النظام. تقوم بإرجاع العديد من السجلات على شاشة العرض الخاصة بنا.

هنا يأتي خيار آخر ، '-type' ، لاستخدامه في تعليمات 'find' لتحديد نوع الملف ، أي ملف أو دليل. لقد استخدمنا هذا الخيار للبحث عن نوع 'ملف' لملف باش وحصلنا على نتيجة واحدة ، أي new.sh في مجلد سطح المكتب.

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

سيؤدي استخدام الخيار '–type' مع 'f' بدون أي اسم ملف أيضًا إلى إرجاع جميع الملفات المخفية.

سيؤدي استخدام 'l' للخيار '-type' إلى إرجاع الروابط الرمزية.

سيؤدي استخدام 'd' للخيار '-type' في تعليمة 'find' إلى إرجاع جميع الدلائل.

يمكنك أيضًا استخدام خيار 'الحجم' للبحث عن ملفات ذات حجم معين من نظامك.

استنتاج:

أظهر هذا البرنامج التعليمي طريقتين بسيطتين لكن أنيقتين للبحث عن أي ملف باستخدام shell terminal. لقد استخدمنا تعليمات 'locate' و 'find' جنبًا إلى جنب مع العديد من الخيارات لسهولة المستخدم وتعلمه ، مثل '-c' و '-n' و '-b' و '-type' و '-name' و ' -L 'وغيرها الكثير. نأمل أن تكون هذه مساعدة غير محدودة لمستخدمي bash الجدد.