الخميس، 6 مارس 2008

التنقل في نظام الملفات والبحث فيه

يتناول هذا القسم أوامر التنقل الاساسية ويبين لك كيفية التنقل في نظام ملفات لينكس والبحث عن الملفات وبناء قواعد بينات تحتوي على معلومات الملفات كتلك التي يتم أستعمالها مع الأمر whatis ستتعلم أيضاً عن الأساليب والبرامج البديلة وكيفية تسريع عمليات البحث لإيجاد الملفات بسرعه .
الانتقال إلى دلائل أخرى بواسطة الأمر cd
الأمر cd ( التغيير إلى دليل ) هو أداة التنقل الاساسية لكي تنقل مكانك الحالي إلى إجزاء مختلفة في نظام ملفات لينكس . يمكنك الأنتقال إلى دليل ما مباشرة بكتابة هذا الأمر يلية مسار أو أسم دليل مثلاً سينقلك الأمر التالي إلى دليل usr/bin:
# cd /usr/bin
عندما تصبح في ذلك الدليل يمكنك الأنتقال إلى الأعلى نحو الدليل usr/ بواسطة الأمر التالي :
# cd ..
يمكنك أيضا الانتقال الى دليل الجذري ( الدليل/) أثناء تواجدك في الدليل usr/bin/ بكتابة الأمر التالي :
# cd ../..
أخيرا يمكنك دائما العودة الى دليلك الأم ( حيث توجد ملفاتك ) بإستعمال أحد الأمرين التاليين :
# cd
او
# cd ~
معرفة مكان تواجدك بواسطة الأمر pwd
يبلغك الأمر pwd ( طباعة دليل العمل ) عن مكان تواجدك ويطبع أسم دليل العمل ( الدليل الحالي ) مثلاً إذا نفذت الأمر
# cd /usr/bin
ثم كتبت
# pwd
سترى
/usr/bin
رغم أن هناك صفحة كتيب للأمر pwd فالاحتمال هو أنك عندما تستعمل pwd تكون تستعمل أمر pwd مبني ضمن غلافك . كيف تستطيع معرفة ذلك ؟ إذا حاولت أستدعاء pwd بواسطة الامر التالي يجب أن ترى إسم دليل العمل الحالي فقط :
# pwd --help
بدالا من ذلك حاول استدعاء pwd كالتالي
# /bin/pwd --help
سترى ملف مساعدة موجز عن الامر pwd وليس إسم دليل الحالي .
البحث في الدلائل عن ملفات مطابقة بواسطة الأمر find
الامر find هو برنامج بحث فعال يمكنك أستعمال للبحث عن الملفات في قرصك الثابت . يمكنك البحث بسهولة بواسطة امر find بسيط مثلاً للبحث عن الامر spell في الدليل usr/ ستستعمل
# find /usr -name spell -print
يمكنك استعمال الامر find أيضا للبحث عن الملفات حسب تواريخها يمكنك تحديد نطاق أوقات أيضا مثلا للبحث عن البرامج في الدليل usr/bin/ التي لم تستعملها في الايام الماضيه أكتب :
# find /usr/bin -type f -atime +100 -print
للبحث عن أي ملفات إما جديدة أو معدلة التي تكون قديمة يوماً واحداً أو أقل في الدليل usr/bin/ اكتب :
# find /usr/bin -type f -mtime -1 -print
يقبل الامر find أحرف بدل أيضا وهو ما ستتعلم عنه في الدروس القادمة بإذن الله وهذا مثال
# find /usr -name '*.ps' -print
إيجاد الملفات بواسطة الأمر whereis
يستطيع الأمر whereis إيجاد الملفات بسرعه كما أنه يبين لك أين توجد نسخة كل ملف الثنائية والمصدر وصفحات كتيبه لك الأمر التالي أن الأمر find موجود في الدليل usr/bin/ وأن صفحة كتيبة موجوده في الدليل usr/man/man1/ :
# whereis find
find: /usr/bin/find /usr/man/man1/find.1
يمكنك أيضا أستعمال الأمر whereis لايجاد فقط الاصدار الثنائي للبرنامج بواسطة
# whereis -b find
find: /usr/bin/find
اذا لم يتمكن whereis من إيجاد ماتريده ستحصل على سلسلة فارغه مثلاً :
# whereis foo
foo:
جزء من المشكلة قد يكون أن الملف ليس موجوداً في أي دليل من الدلائل التي بحث فيها whereis ان الدلائل التي يبحث فيها "محفورة" في البرنامج . رغم أن هذا قد لايبدو عائقاً الا أن حد نطاق البحث عند الدلائل المعروفة كــ usr/man/ او usr/bin/ او usr/sbin/ يمكن أن يسرع عملية إيجاد الملفات .
رغم أن whereis اسرع من find لايجاد البرامج أو صفحات الكتيب الا أن هناك برنامج بحث أسرع أيضا يمكنك أستعماله يدعى locate سنشرحه في القسم التالي .
البحث عن الملفات بواسطة الأمر locate
إحدى الطرق لتسريع عمليات البحث عن الملفات هي بعدم البحث في الدلائل يمكنك فعل هذا بإستعمال برنامج كـlocate الذي يستعمل قاعدة بينات تحتوي على أسماء ملفات و أماكن والذي يفور الوقت ببحثه في ملف واحد بدلا من الملاحه في قرصك الثابت . أن العثور على ملف بإستعمال الامر locate أسرع بكثير من أستعمال الامر find أو locate ينتقل الى ملف قاعدة البيانات مباشره فيبحث عن أسماء الملفات المطابقة ويعرض النتائج .
الأمر locate سهل الاستعمال مثلاً لايجاد كل الملفات البوستسكريبت في كمبيوترك يمكنك كتابة
# locate *.ps
تواً تقريباً ستظهر أسماء الملفات على الشاشة حتى أنك قد تجد الأمر locate أبسط من الامر find لكن هناك صعوبة سيعمل find بعد أخراجه من الحزمه مباشرة بينما تحتاج أولاً مع الأمر locate إلى بناء قاعدة بيانات بكل الملفات الموجوده في كمبيوترك لكن لا تقلق لإن هذا الاجراء تلقائي في الموجّه
# updatedb
قد يستغرق أنشاء قاعدة البيانات حوالي الدقيقه لكن عندما ينتهي ستتواجد قاعدة البيانات التي تدعى locatedb ( حوالي 300.00 حرف لملفات حجمها 400 ميقابايت ) في الدليل var/lib/ العائق الوحيد لاستعمال الأمر locate هو أنه بعد فترة من الوقت ستصبح قاعدة بياناته قديمة كونك أضفت و حذفت ملفات من كمبيوترك . لكن يمكنك تحديث قاعدة البيانات تلقائيا .

ليست هناك تعليقات: