النتائج 1 إلى 4 من 4

الموضوع: المحاضرة السادسة الجزء الأول من كورس rhce جامعة عرب هاردوير

  1. #1
    عضو الصورة الرمزية b7lmbeek
    تاريخ التسجيل
    Nov 2008
    المشاركات
    174
    الدولة: Egypt
    معدل تقييم المستوى
    0

    Smile المحاضرة السادسة الجزء الأول من كورس rhce جامعة عرب هاردوير

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

    وقبل أى شىء يجب على الجميع ملاحظة أن اللينوكس يقوم بمعامله كل جزء فى السيستم وكل شىء وحتى الخدمات التى يقدمها على أساس انها text files ولذلك وجدت أهمية معرفه كيف تتعامل مع الملفات فى نظام لينوكس


    نبدأ على بركة الله :

    نبدأ بالامر sort

    ما عمل هذا الأمر ؟؟ يقوم هذا الأمر بترتيب ملف معين على حسب أى شىء يتم تحديده بالامر فمثلا أريد ترتيب السطور فى ملف مثل

    كود PHP:
    /etc/passwd 
    نفكر أولا على أى أساس سيتم الترتيب و كيف نقوم بهذا وما الجزء الذى سنقوم بالترتيب على أساسه ولكن أولا نقوم بعرض جزء من الملف :
    كود PHP:
    root:x:0:0:root:/root:/bin/bash
    daemon
    :x:1:1:daemon:/usr/sbin:/bin/sh
    bin
    :x:2:2:bin:/bin:/bin/sh
    sys
    :x:3:3:sys:/dev:/bin/sh
    sync
    :x:4:65534:sync:/bin:/bin/sync
    games
    :x:5:60:games:/usr/games:/bin/sh
    man
    :x:6:12:man:/var/cache/man:/bin/sh 
    والمزيد ....

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

    كود PHP:
    sort -t: -k1 /etc/passwd 
    فى الخيار -t قمنا بتحديد الفاصل بين الحقول الذى سيتم العد على أساسه والترتيب هنا ترتيب أبجدى ولكن ماذا إذا قمنا بعمل

    كود PHP:
    sort -t: -nk3 /etc/passwd 
    سيكون الترتيب هنا عددى ولذلك اضنا حرف ال n ويكون الترتيب على أساس الخانة الثالثة فى السطر

    يرجى قراءة ال man الخاص بالامر عن طريق :
    كود PHP:
    man sort 
    وهذا جزء بسيط من الخيارات للأمر
    كود PHP:
      **Common options
        
    -r performs a reverse (descendingsort
        
    -n performs a numeric sort
        
    -f ignores (folds) case of characters in strings
        
    -(uniqueremoves duplicate lines in output
        
    -t c uses c as a field separator
        
    -k X sorts by c-delimited field X
              Can be used multiple times 
    ومن أهمها طبعا الخيار -u فهى لا تظهر النتائج المتشابهة فى الترتيب بل تظهرها مرة واحدة فقط كالتالى :

    نفذ الامر التالى :
    كود PHP:
    touch userlist.txt
    echo "kareem abd elkader
    > mostafa ahmed
    > kareem abd elkader
    > mostafa ahmed"
    >userlist.txt

    sort -u userlist.txt 
    وهنا هتكون النتيجة :
    كود PHP:
    root@kareem-pc:~# sort -u userlist.txt
    kareem abd elkader
    mostafa ahmed 
    بينما فى تنفيذ الأمر uniq على المخرجيقوم بعدهم ويقوم بذكر كم مرة تكررت الكلمة فى النص مع الترتيب كالتالى
    كود PHP:
    root@kareem-pc:~# sort userlist.txt | uniq -c
          
    2 kareem abd elkader
          2 mostafa ahmed 
    نأتى إلى أمر اخر وهوا
    كود PHP:
    diff and patch 
    ما هوا الأمر diff

    مثلا : لديك ملفان لإعدادات الأباتشى مثلا أحدهما معطوب والآخر سليم وتريد أن تعرف ما الفرق بين المعطوب والسليم أو أوجه الإختلاف بينهما لمعرفه وجه الخطأ هنا تظهر فائدة الأمر diff

    كود PHP:
    #diff broken.txt work.txt 
    وهنا هيقوم بعرض المختلف بينهم وطبعا الترتيب واضح فالملف المعطوب ذكر أولا والملف السليم ذكر ثانيا وسيتم توضيح لماذا ولكن ليس الىن بل عند شرح patch

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

    كود PHP:
    #diff -u broken.txt work.txt >patch.patch 
    الامر التالى أخرج لك الإختلاف فى ملف منفرد
    والان أردت مثلا أن تقوم بتنفيذ الاختلافات على الملف المعطوب لديك ؟؟ماذا سيحدث ؟؟

    نقوم بالتجربة :
    1- قم بإنشاء ملفين متشابهين وليكن
    كود PHP:
    #echo " linux rox
    windows is sucks
    mac 
    for design
    freebsd is amazing
    ">work.txt

    #echo "
    fedora rox
    windws is bad system
    mac
    freebsd is amazing
    ">broken.txt 
    2- الان قم بالمقارنة وإخراج الناتج منهم :

    كود PHP:
    diff -u broken.txt work.txt >systems.patch 
    3- قم بعرض محتويات الملف الناتج :
    كود PHP:
    root@kareem-pc:~# cat systems.patch
    --- broken.txt    2009-03-25 03:41:32.000000000 +0200
    +++ work.txt    2009-03-25 03:41:17.000000000 +0200
    @@ -1,+1,@@
    -
    fedora rox
    -windws is bad system
    -mac
    linux rox
    +windows is sucks
    +mac for design
     freebsd is amazing 
    والان نريد تطبيق الملف systems.patch على الملف broken.txt
    نقوم بالامر التالى :
    كود PHP:
    root@kareem-pc:~# patch -b broken.txt systems.patch 
    patching file broken.txt 
    وتمت عمليه الباتش
    الامر هنا قام بعمل تطبيق للتغييرات الموجود فى ملف باتش على الملف المعطوب وهوا broken.txt وتم اختيار الخيار -b لكى يقوم بعمل نسخة احتياطية من الملف أو backup وسنرى هذا والان قم بعمل التالى :
    كود PHP:
    #ls -l
    -rw-r--r-- 1 root root   61 2009-03-25 03:44 work.txt
    -rw-r--r-- 1 root root  220 2009-03-25 03:44 systems.patch
    -rw-r--r-- 1 root root   61 2009-03-25 03:46 broken.txt
    -rw-r--r-- 1 root root   55 2009-03-25 03:43 broken.txt.orig 
    الان لديك أربعة ملفات منهم ملف الباتش والملف السليم والملف المعطوب وملف نسخة احتياطية للملف المعطوب وهى original وفى حين رغبت فى استرجاعه فى اى وقت ويمكنك قراءة المحتوى لكل ملف عن طريق
    كود PHP:
    #cat filename 
    نكمل حديثنا ونستعمل أدارة رائعة فى لينوكس وهى
    كود PHP:
    aspell check letter.txt 
    تقوم بعمل spelling فى الملف ويعمل لك check للهجاء للملفوتختار التعديل فتنفذه لك
    مثل القاموس تماما

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

    كود PHP:
    #sed -e 's/Ahmed/kareem/' /home/filename 
    يقوم هذا الامر الان بالبحث داخل الملف المذكور مساره هنا /home/filename على كلمة Ahmed وإستبدالها بكلمة kareem ويعرض لنا النتائج فقط لاننا إستخدمنا الخيار -e فقد قام بالبحث والتحرير وذلك فى النتيجة المعروضة فقط لك وللتأكد قم بعرض الملف وستجد لم يتغير شىء

    كود PHP:
    #sed -i 's/Ahmed/kareem/' /home/filename 
    بعد تغيير هذا الخيار قم بعرض الملف تلاحظ طبعا ماحدث من تغيير

    والان ننتقل إلى طريقة أخرى لإستخدام هذى الأداة فمثلا :
    كود PHP:
    #sed '1,50s/dog/cat/g' /home/filename 
    هنا يقوم بالبحث من السطر الاول وحتى السطر 50للبحث عن كلمة dog وابدالها بكلمة cat وذلك فى الملف كله Global

    مثال اخر

    كود PHP:
    #sed '/kareem/,/redhat/s/engineer/SystemAdministrator/g' /home/filename 
    هنا طلبت من الامر ان يقوم بالبحث فى الملف المذكور عن كل سطر يحتوى على كلمة kareem و redhat ويقوم بالبحث
    داخل السطر عن كلمة engineer وتحويلها الى SystemAdministrator

    ولكن فلنفترض وجود اكثر من كلمة أريد البحث عنها وتغييرها وقد لا يجمعهم سطر واحد ولكنهم فى الملف وهنا تقوم بالامر التالى :
    كود PHP:
    sed -'s/ahmed/kareem/' -'s/zeko/mostafa/' /home/filename 
    وهناك فكرة أفضل

    تضع كل تعديلاتك فى ملف كالتالى مثلا
    كود PHP:
    s/ahmed/kareem/
    s/zeko/mostafa
    وتقوم بتطبيق كل هذى التغييرات على الملف كالتالى :
    كود PHP:
    sed -f myedit /home/filename 
    غلى هنا فقد إنتهينا من شرح بعض الأدوات المهمة فى التحكم فى النصوص والمحررات الخاصة بها فى لينوكس
    ملاحظة : قد لايبدو مفيدا لدى البعض درسا مثل هذا ولكنه من القواعد الأساسية لأى مدير نظام system administrator ان يعرف ماذا يجب أن يكون بين يديه لتغيير ملفات ال config فى السيستم

    ترقبوا المزيد
    ولا تنسونا من صالح دعواتكم
    وشكرى لأستاذى المهندس مصطفى طنطاوى
    كريم عبد القادر
    25مارس 2009
    4:55 صباحا
    يارب إن عظمت ذنوبى كثرة ... فلقد علمت بأن عفوك أعظم
    ---------------
    عضو بجامعة عرب هاردوير
    كورس RHCE
    تحت رعاية المهندس / مصطفى طنطاوى
    ----------
    الحمد لله نجحت ... حاليا الفرقة التالتة ..كلية التجارة وإدارة الأعمال ... جامعة القاهرة ...يارب عقبال الجميع :ah40:
    ------
    الماتريال الخاصة بكورس اللينوكس
    كتب خاصة تخص اللينوكس وكيفية ايجاد الكتب عبر الانترنت
    تنصيب توزيعة csntOS على بيئة ويندوز شرح شامل من البداية
    فيدورا 11 تغطية شاملة والطريق نحو الاحتراف
    تنصيب ويندوز داخل بيئة عمل لينوكس أوبنتو .. شرح شامل

    قريبا تكتمل سلسلة المحاضرات ... مقالات متابعة لكورس ال rhce بالمنتدى

  2. #2
    عضو برونزي الصورة الرمزية 7amasa7
    تاريخ التسجيل
    Dec 2007
    المشاركات
    1,304
    معدل تقييم المستوى
    0

    رد: المحاضرة السادسة الجزء الأول من كورس rhce جامعة عرب هاردوير

    الف شكر يا كيمو ودايما منتظرين منك كل جديد وفى انتظار باقى المحاضره

    جزاك الله خيراا
    [CENTER][B][SIZE=5][COLOR=blue]لا اله الا انت سبحانك انى كنت من الظالمين[/COLOR][/SIZE][/B][/CENTER]

  3. #3
    عضو فضي الصورة الرمزية mohamed2121
    تاريخ التسجيل
    Apr 2005
    المشاركات
    2,317
    الدولة: Egypt
    معدل تقييم المستوى
    21

    رد: المحاضرة السادسة الجزء الأول من كورس rhce جامعة عرب هاردوير

    تم عمل الملف بـ PDF ورفعه على السرفر
    مجهود جميل ياكريم ونتقبل اليوم أنشاء الله

  4. #4
    عضو
    تاريخ التسجيل
    Apr 2005
    المشاركات
    667
    الدولة: Cook Islands
    معدل تقييم المستوى
    20

    رد: المحاضرة السادسة الجزء الأول من كورس rhce جامعة عرب هاردوير

    كم محاضرة قمت بتلخسصها اخي بحلم بيك؟
    ورجاء تجميع روابطها
    وبارك الله فيك على المجهود

المواضيع المتشابهه

  1. تقرير عرب هاردوير عن معرض جيتكس دبي 2009 - الجزء الأول
    بواسطة Mohamed.Kamal في المنتدى الأرشيف
    مشاركات: 30
    آخر مشاركة: 29-12-2009, 10:41
  2. مشاركات: 4
    آخر مشاركة: 27-03-2009, 20:39
  3. المحاضرة الخامسة من كورس RHCE من جامعة عرب هاردوير
    بواسطة b7lmbeek في المنتدى الأرشيف
    مشاركات: 4
    آخر مشاركة: 08-02-2009, 15:00
  4. المحاضرة الرابعة من كورس RHCE من جامعة عرب هاردوير
    بواسطة b7lmbeek في المنتدى الأرشيف
    مشاركات: 9
    آخر مشاركة: 05-02-2009, 14:19

الكلمات الدلالية لهذا الموضوع

المفضلات

ضوابط المشاركة

  • لا تستطيع إضافة مواضيع جديدة
  • لا تستطيع الرد على المواضيع
  • لا تستطيع إرفاق ملفات
  • لا تستطيع تعديل مشاركاتك
  •