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

الموضوع: المحاضرة الرابعة من كورس RHCE من جامعة عرب هاردوير

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

    Smile المحاضرة الرابعة من كورس RHCE من جامعة عرب هاردوير

    السلام عليكم ورحمة الله وبركاته

    آسف جدا يا أخوانى على التأخر فى وضع الشرح الكتابى لبقيت المحاضرات

    لكن الحمد لله هنرجع للشرح مرة تانية
    كود PHP:
    Unit 7

    Standard I
    /and Pipes 
    المحاضرة هى الرابعة وتعتبر ال lab 3 فى الشرح الفيديو



    ما هوا الStandard input و Standard output و Standard error


    كود PHP:
          Linux provides three I/O channels to Programs
                Standard input 
    (STDIN) - keyboard by default
                
    Standard output (STDOUT) - terminal window by default
                
    Standard error (STDERR) - terminal window by default 
    نرجع لأول مرة درسنا حاسب الى فى حياتنا

    سمعنا عن التالى فى الهاردوير الخاص بالجهاز :

    المدخلات والمخرجات والعمليات

    المدخلات عبارة عن مجموعة من البيانات بتقوم بادخالها للكمبيوتر وبعدها
    بتتم العمليات على المدخلات دى ثم بيكون ناتج العملية هوا المخرجات
    وهى عباة عن معلومات او بيانات تم التعديل عليها لتفيد المستخدم

    حتى الآن شىء جميل

    ماذا يفيد هذا فى شرحنا وكلامنا السابق

    عند تعاملك مع الترمنال او الشل او اللينوكس عامة تقوم بإدخال إليه مجموعة من الأوامر

    هذه الأوامر هى عبارة عن ال Standard input

    يعنى مثلا كتبت للشل عبارة أو أمر :

    كود PHP:
    ls -alR /etc 
    هذا هو المدخل الذى نقوم بإدخاله الى النظام او الشل

    ومن ثم بعد هذا الأمر يقوم السيستم بالرد عليك بإعطائك قائمة طويلة جدا جدا جدا

    رد السيستم أيا كان هوا عبارة عن Standard output وهو رد صحيح للعمليه
    أى أن ما طلبته من السيستم شىء منطقى وقام بالرد عليه فى هيئة قائمة من
    الملفات والتصاريح الخاصة بها والملفات أسفل المسارات بكافة الأشكال

    ولكن لنفرض أننا قمنا بإعطاء السيستم أمر ما ونتج عنه مجموعة من الأخطاء التى ظهرت لك فى نافذة الترمينال

    يعتبر هذا الخطأ الظاهر لك هوا عبارة عن Standard error

    وليكن مثلا :
    كود PHP:
    ls -alR /kimotopalansary
    ls
    cannot access /kimotopalansaryNo such file or directory 
    ناتج العملية السابقة كما هوا ظاهر لديك السيستم يخبرك بعدم وجود هذا المسار

    انتهينا من النقطة الأولى
    كود PHP:

    Redirecting Output to a File 
    ما معنى السطر السابق

    هو تحويل المخرجات الى ملف معين أو إلى مسار معين

    فمثلا :
    عند تنفيذ الأمر التالى :
    كود PHP:
    ls -alR /etc 
    يكون الناتج كبير جدا جدا لدرجة انى لن أستطيع قراءة كامل الناتج ولهذا فأنا لاأستفيد بالأمر الذى أعطيته للنظام
    وهنا أقوم بعمل أمر للسيستم أوجه فيه له أن يخرج لى المخرجات إما ى ملف أو يظهر مجزء على الشاشة على قدر حجم الشاشة فقط
    أى أننى أقوم بتحويل المخرجات الى مكان معيا فى النظام او الى ملف معين او اقوم باخراجه الى عمليه أخرى مثلا

    دعنا نستعرض مثال :
    كود PHP:
    ls -alR /etc >/root/kareem.txt 
    قم بالذهاب الى المسار /root ثم قم بعرض الملف kareem.txtماذا تلاحظ ؟؟؟
    ظهور قائمة بكافة ملفات السيستم فى المسار الذى طلبت منه استعراضهاموجودة فى قائمة داخل الملف

    كيف حدث هذا

    حدث عن طريق تحويل المخرجات كلها الى ملف موجود فى مسار معين واذا كان الملف غير موجود يقوم السيستم بإنشاؤه لك

    بمعنى آخر : كيف يمكننى التعامل مع هذه الإختصارات ؟؟؟ وكيف يتم كتابتها ؟ وما المفيد فيها ؟؟؟

    كود PHP:
    # > Redirect STDOUT to file 
    تقوم هذه العلامة بتوجيه المخرجات الصحيحة عن طريق العلامة التالية ( < ) وتقوم بتحويل ال standard output الى المسار المذكور فى الأمر

    هذه العلامة تقوم بتحويل ال ( <2 ) ال Standard error الى ملف معين او مسارا معينا وهى المخرجات الخاطئة الى مسار معين

    بينما هذه العلامة

    كود PHP:
    &> Redirect all output to file 
    تقوم بتحويل كامل الoutput الى مسار او الى ملف معين


    ما فائدة تحويل الإيرور الناتج عن عمليه ما الى ملف معين ؟؟؟؟

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

    أمثلة على تحويل الايرور او تحويل ال output الى مسار معين أو تحويل الأيرور الى مسار معين


    كود PHP:
    ls -/etc less 
    هنا يقوم النظام باخراج ناتج الامر جزء صغير و جزء صغير على حسب حجم الشاشة او الترمينال عندك
    فيظهر صفحة صفحة وتتحرك فيه بالاسهم او بالبكره فى الماوس

    كود PHP:
    ls -/root/kareem >kimo.txt 
    يقوم الامر السابق بنقل ناتج الأمر الى ملف معين لديك فى النظام وبفتح الملف يظهر لك كافة الناتج الخاص بالامر

    كود PHP:
    ls -alR /dev/1kjfdvasd /etc 2>kimo.txt >kimo1.txt 
    الامر هنا عبارة عن طلب من السيستم بعرض محتويات مسارين مختلفين وهما
    كود PHP:
    /dev/1kjfdvasd 
    /etc 
    ثم توجيه ناتج كل عمليه منهما الى ملف معين فالايرور يتم تحويله الى kimo.txt والناتج الصحيح يتم تحويله الى kimo1.txt
    هنا نلاحظ أن المسار المطلوب عرض الملفات بيه غير موجود اصلا وهذا ينتج عنه إيرور معين والمسار الاخر يكون له ناتج فيقوم الملف بتوجيه الايرور الى الملف kimo.txt والناتج الصحيح يقوم بتوجيهه الى الملف kimo1.txt


    وفى الامر التالى يمكننا توجيه كافة النواتج الى ملف معين وهنا يقوم بتوجيه الايرور والناتج الصحيح الى هذا الملف كما يلى outputall
    كود PHP:
    # ls -alR /dev/1kjfdvasd /etc &>outputall.txt 
    ولكن تظهر لنا مشكلة وهى ان كلما يتم إضافة ايرور معين او ناتج عمليه صحيحه معين الى ملف يتم حذف السابق فى الملف والكتابه من جديد ( يعنى بيمسح ويكتب من الاول جرب وشوف كالتالى ):
    كود PHP:
    1-#ls -l /root >1.txt
    2-#cat 1.txt
    3-#ls -l /etc >1.txt
    4-#cat 1.txt |less 
    نلاحظ اختفاء ناتج العملية الاولى وظهور ناتج العملية التانية فقط فى الامر رقم 4

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

    مثال يوضح كيف يتم هذا :
    كود PHP:
    1-#echo "Arabhardware.net">1.txt
    2-#cat 1.txt
    3-#echo "b7lmbeek" >>1.txt
    4-#cat 1.txt
    ويكون الناتج 
    Arabhardware
    .net
    b7lmbeek 
    ----
    ننتقل الى أمثلة أقوى
    كود PHP:
    find /etc -name passwd 
    يعنى انا بقول للسيستم يدورلى جوا ال/etc عن ملف معين اسمه passwd
    طبعا فى اوبشن مختلف اخر اسمه iname بحيث انى لو طلبت منه يبحث عن ملف اسمه pAsSwD فهوا هيدور على الملف دا بنفس الشكل للحروف دى وهيجيبه برده ومش هيجيب غيره

    طيب نحاول تنفيذ الأمر
    وطبعا بيخرج لك مكان الملف بكل بساطة

    طيب نحاول ندور بشكل تانى

    كود PHP:
    find /etc -name passwd fm.txt 
    هنا شوف الناتج للعملية دى هتلاحظ انه طلع لك كل الملفات اللى بتحتوى على كلمه passwd

    كود PHP:
    find /etc -name passwd > /dev/null 
    يعنى ايه ؟؟؟
    وايه المكان الى انا وجهت له الايرور ؟؟؟؟
    المكان اللى وجهت له الايرور هوا عبارة عن ثقب أسود فى السيستم يعنى اللى بيروح هناك مبيرجعش تانى او بيتمسح بشكل نهائى او بيروح للامكان

    طيب مثال كمان

    كود PHP:
    find /etc -name passwd find.out 2find.err 
    الحالة دى شرحتها قبل كدا

    نأتى لنقطة تانية فى الشرح وهى pipes

    يعنى بيحول من ال standered out الى programm

    كود PHP:
    #command1 | command2 | command3... etc 
    يعنى مثلا ناتج عمليه انا قمت بيها فى السيستم باخد المخرجات بتاعته وبقوم بادخالها فى عمليه تانية خالص عن طريق ( ماسورة بالبلدى يعنى )

    مثال بسيط
    كود PHP:
    cat /etc/passwd
    cat 
    /etc/passwd |grep "root"
    cat /etc/passwd |grep "root" |grep "^root" |cut -f7 -d":" 
    هنا ببساطة الامر الاول عمل اظهار فى الشل للملف ال/etc/passwd
    الامر التانى هيطلع السطر اللى فيه الكلمة اللى أمرته بيها root
    السطر التالت هيجيب السطر اللى بدأ ب root
    الامر الاخير هيقوم بعمل cut يعنى قطع للحقل السابعf7 حينما يكون الفاصل هوا ":"
    وهنا يكون الناتج

    كود PHP:
    /bin/bash 
    مثال تانى :
    كود PHP:
    #$ echo "test email" | mail -s "test" root@kareem-desktop 
    هوا هنا يقوم بطباعة الامر test email
    ومن ثم يقوم بتحويلها الى امر اخر نقوم بارساله الى يوزر اخر او ايميل من خلال الامر mail والاوبشن التالى له -s هوا عنوان الرساله وفى النهاية تكتب الميل الذى سيتم الارسال الرساله اليه وهوا التالى root@kareem-desktop ثم Enter

    طيب وافتح الميل اللى جالى ازاى ؟؟؟؟

    عن طريق الامر mutt
    ولو مش شغال معاك استعمل فى الاوبنتو لينوكس
    كود PHP:
    #sudo apt get install mutt 
    ثم تقوم بالاختيار الايميل وتضغط انتر ويظهر لك محتوى الرساله ( لازم تجرب بايديك )
    كود PHP:
    Toroot@kareem-desktop
    Subject
    this is testmail
    From
    root <root@kareem-desktop>

    testmail 
    هنا الميل اللى انا بعته

    دا ابسط مثال لل | pipe line

    استعمال اخر
    كود PHP:
    #$ command1 | tee filename | command2 
    الامر السابق يقوم بتنفيذ الكوماند رقم 1 اولا ثم يقوم بتمرير الناتج عن طريق pipe line الى الامر tee الذى يقوم بدوره بإنشاء ملف يحمل كافة مخرجات الكوماند الاول ثم يقوم بتمرير الملف بالكامل الى الكوماند رقم 2 لعمل عمليه معينه عليه

    مثال
    كود PHP:
    #cat /etc/passwd | tee kimotop | grep "root" |grep "^root" | cut -f7 -d ":" 
    الناتج من العملية
    كود PHP:
    #/bin/bash 
    ثم قم بتنفيذ الامر التالى تجد أن ناتج الامر الاول يظهر بالملف بالكامل

    كود PHP:
    #cat kimotop |less 
    مثال اخر

    كود PHP:
    $ ( cal 2007 cal 2008 ) | less 
    ذكرنا من قبل أنه لكتابه اكثر من امر فى نفس السطر نقوم بوضع ال ; بينهم

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



    كود PHP:
    echo "kareem" |tr 'a-z' 'A-Z' 
    والامر tr هنا هيحول الكلمة من small الى كابتل



    تعالى ننفذ حاجة مهمة جدا

    وهى Sending Multiple Lines to STDIN

    يعنى انا بوجه كذا سطر لعمل امر واحد
    زى اسه مثلا ؟؟؟

    تعالى معايا نكتب الامر التالى :

    مثلا أمر الميل
    كود PHP:
    #mail -s "kareem write multi lines" root@kareem-desktop <<END
    Hi Jane,
    >        
    this is a try for anew method in linux
    eshta fa7t
    >        
    Details later
    krkr
    END 
    الملاحظ هنا ان الباش فضلت تستقبل منك أوامر بدون توقف و سابتك تكتب السطور دى كلها

    لحد اما انته كتبت الكلمة END وهى نفسها اللى كتبتها فى السطر الاول

    لما انته كتبتها فى السطر الاول الباش ملقتش الامر اكتمل ولا لقت لها معنى فسابتك تكتب لحد اما وصلت للجزء اللى خلصت انته فيه وقلت لها انا خلصت

    طبعا END دى ممكن تكون اى حاجة تانية ان شاء الله حتى &#$@ او حتى حرف واحد
    يعنى الباش بتستنى لحدا اما الامر يكمل او انته تضيف حاجة تعطى له معنى (افتراض حسن النية من الباش )
    نأتى الى أداه تانية فى ال bash

    وهى ال for -loop

    انا عايز حاجة تتنفذ اكتر من مرة فبرميها فى اللوب دا

    يعنى عايز اكريت ملف واحد اكتر من مرة او اخزن اكتر من قيمة فى اكتر من ملف
    استخداماتها كتيرة جداااااااااااا

    مثال :-- ......
    انا عايز اكريت عشر ملفات فى فولدر معين
    هعمل ايه ؟؟؟
    كود PHP:
    #mkdir test
    #cd test
    #for i in 'seq 1 10'
    #do 
    #touch file$i
    #done 
    اعمل بقى ls
    هتلاقيه عمل عشر ملفات بنفس الاسم file مع اختلاف الاسم بالارقام اللى فى المتغير i


    ال i هنا عبارة عن قيمة او variable معين ممكن يتعوض داخله باى حاجة

    يعنى جوا كل i حيث ال i من 1-10 فيقوم يروح يعمل الاوامر اللى معاه مضيف عليها الجزء السابق الخاص بالتعويض عن i لحد اما يوصل للاخر العد او الهارد يتملى

    يعنى لو عايز اضيف او احذف جزء على الف ملف مثلا فبقوم بعمل الاتى :

    اول حاجة هجيب اسماء الملفات اللى عايز اغير فيها فى ملف مثلا krkr.txt

    بعمل for واسماء الملفات وبقوله cat للملف وبعدين echo الجزء اللى عايز اضيفه ثم append او >> بحيث انه يعمل الاضافة مش يمسحهم كلهم

    اتمنى أكون وفقت فى التوصيل

    وطبعا كل اللى كتبته من الفيديو والملاحظات اللى بيشرحها المهندس مصطفى

    اتبقى محاضرة سابقة والمحاضرة بتاعت امبارح يعنى محاضرتين وتبقوا متابعين معانا أول بأول

    الفيديو موجود للى محتاجه يعنى مش كتابه بس

    بالتوفيق للجميع ان شاء الله

    وبحثت فى النت أثناء السهر المتواصل ووجدت كتاب ماتريال كويسة يارب تعجبكم والمهندس مصطفى يوافق عليها

    حصريا لكورس الريدهات احضرت كتاب مميز Red Hat Certified Engineer Linux Study Guide
    دعواتكم للمهندس مصطفى لانه بيتعب معانا جامد يا جماعة والله اكتر مما بيظهر لكم فى الفيديو

    ومتنسونيش برده بدعوتين


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

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

  2. #2
    عضو فضي الصورة الرمزية ahab
    تاريخ التسجيل
    Mar 2008
    المشاركات
    2,669
    الدولة: Saudi Arabia
    معدل تقييم المستوى
    22

    رد: المحاضرة الرابعة من كورس RHCE من جامعة عرب هاردوير

    يسعدني إني أكون أول واحد يرد عليك :

    بصراحة عمل ممتاز

    وجزاك الله كل خير أنت والباشمهندس مصطفى وجميع فريق العمل وجعله في موازيين حسناتكم

  3. #3
    عضو فضي الصورة الرمزية adam black ice
    تاريخ التسجيل
    Mar 2006
    المشاركات
    2,072
    معدل تقييم المستوى
    21

    رد: المحاضرة الرابعة من كورس RHCE من جامعة عرب هاردوير

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

    Knowledge is belong to human

  4. #4
    عضو الصورة الرمزية flwcx
    تاريخ التسجيل
    Jun 2007
    المشاركات
    241
    الدولة: Egypt
    معدل تقييم المستوى
    17

    رد: المحاضرة الرابعة من كورس RHCE من جامعة عرب هاردوير

    يا جامد يا كريم اية يابني الجمال دة بجد حاجة ممتازة اوي
    ياريت فعلاً تعمل الكلام دة في pdf افضل يعني بنتقل عليك
    بس ممتاز يا كيمووووووووووووووووووووووووو


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

    رد: المحاضرة الرابعة من كورس RHCE من جامعة عرب هاردوير

    والله يا كيمو شغل جامد اوى ومجهود جامد منك اسأل الله ان يكون فى ميزان حسناتك ان شاء الله

    ودايما مستنيين مفاجأت منك يا باشا وياريت فعلا تظبطلنا الشرح دا فى pdf

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

  6. #6
    عضو
    تاريخ التسجيل
    Apr 2007
    المشاركات
    12
    معدل تقييم المستوى
    0

    رد: المحاضرة الرابعة من كورس RHCE من جامعة عرب هاردوير

    اولآ اشكرك على الدرس الجميل ويبدو انه شيق وجميل لى عوده بأذن الله لقراءه الدرس بتمعن وسوف اضع ملاحظاتى بأذن الله

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

    رد: المحاضرة الرابعة من كورس RHCE من جامعة عرب هاردوير

    الله ينور ياكريم
    تم تحويله الى
    PDF

    https://www.4shared.com/file/8273883...2c0c/lab4.html

    وموجود فى فولد التحميل على shared

  8. #8
    عضو الصورة الرمزية clerck
    تاريخ التسجيل
    Jul 2007
    المشاركات
    644
    معدل تقييم المستوى
    0

    رد: المحاضرة الرابعة من كورس RHCE من جامعة عرب هاردوير

    ايه ياعم الجمال ده
    ماشاء الله عليك
    ان شاء الله انتظرو مني مفاجأه لتغطيه الكورس
    هي هتبقي ملحق للاوامر وكلمه عنها باختصار وليس شرح كامل بحيث من يحتاج اي معلومه بأختصار يرجع اليها
    بس هي اكيد هتاخد وقت بعد الشرح الجامد بتاع استاذي مصطفي والشرح الجامد بتاع كيموا
    https://www.islamway.com/gaza/

  9. #9
    عضو برونزي الصورة الرمزية mahmoud saad
    تاريخ التسجيل
    Jan 2008
    المشاركات
    1,188
    معدل تقييم المستوى
    19

    رد: المحاضرة الرابعة من كورس RHCE من جامعة عرب هاردوير

    جزاك الله خيرا يا كريم والله شرح جامد ربنا يوفقك
    [URL="https://img193.imageshack.us/i/ubuntuuser2php.png/"]
    [/URL]

  10. #10
    عضو الصورة الرمزية elabyad
    تاريخ التسجيل
    May 2008
    المشاركات
    264
    معدل تقييم المستوى
    17

    رد: المحاضرة الرابعة من كورس RHCE من جامعة عرب هاردوير

    جزاك الله خير
    سباق للخير دائما يااخي ......

    نفعك الله بما نفعتنا
    وزادك علما

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

  1. المحاضرة الرابعة من كورس التعامل مع لينوكس من خلال سطر الاوامر
    بواسطة عبدالرحمن عزت في المنتدى الأرشيف
    مشاركات: 0
    آخر مشاركة: 13-08-2012, 17:07
  2. مشاركات: 4
    آخر مشاركة: 27-03-2009, 20:39
  3. مشاركات: 3
    آخر مشاركة: 25-03-2009, 14:48
  4. المحاضرة الخامسة من كورس RHCE من جامعة عرب هاردوير
    بواسطة b7lmbeek في المنتدى الأرشيف
    مشاركات: 4
    آخر مشاركة: 08-02-2009, 15:00

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

المفضلات

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

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