Linux Admin Second lec Root @ Kali : ~ # user Roo t variable of System argument التغير المسؤال عن نقل السكريبتات و الدوات و تغشيلها ب النظام النسخلة الخاصة بيك فى لينكس # ls -l ~/Desktop $1 $2 دلوقتي علمة الشباك هتبدا تشوف نوع الداة اللي بعدها ف لقيت الداة Listing المهم هتروح فاتحا و بالتالي الداة ليستينج اداة خاصة ب عرض الملفات ف اول حاجة هتسأل عليها هي ال مكان اللي هتنزل فية ف يروح الشباك حاطط قدامها علمة الدولر و رقم 2فيكون دا المكاناللي هتعرضة بعدها بتسأل هوا فى امر محدد او اداة زيادة هستخدمها ف ينزل ال دولر 1فيقوم البرنامج شاطب ال Ls ويسيب ال -l فيكون البرنامج معروض كالتي # listing $2 $1 و هنا علمو الدولر بتكونمكان حجز المتغير اللي بينزل فية كل كلة فى الترمينال مثلن ف مكان ال ديسك توب اتسجل فى علمة الدولر برقم 2 اما التصريحات الخاصة ب البرنامج ف كانت دولر1 Setting A variables بفرض تريد تسوية متغير ياخد قيمة رقيمة فنتكتب المر الدتي دون مسافات a=5 تمام لو تريد عرض قيمتة هنا فتكتب المر التي ثم اسم المتغير echo $a هذا الجزء ثابت بعد علمة الدولر تكتب اسم المتغير طب ب فرض تريد اجراء عملية جمع ب اضافة رقم 5على قيمة المتغير السابق ف نكتب )) a=$(( a + 5 حيث علمة الدولر هنا تدل على استدعاء القيمة السابقة للمتغير A بس لحظ اذ قمت ب عملية الجمع ب هذة الطريقة و قمت ب عرض قيمة المتغير فتكون 10و يثبت عليها echo $a فيكون الخارج من هذة العملية 10 ولكن اذ قمت ب عملية الجمع ب هذة الطريق فان المتغير تعود قيمتة 5لنها عملية لحظية ))echo a=$((a+5 فتكون القيمة 10و لكنها تعود 5بعد انتهاء العملية بفرض تريد اعطاء قيمة المتغير قيمة اداة ف هنا نستعمل القوس الواحد )( على عكس القوسين المتتاليين فهم للعمليات الحابية ايا كانت اما القوس المنفردين )( فهم لجعل قيمة متغير تساوي قيمة اداة كمثال -:التي )a=(ls -l فهنا انت قمت ب مساواة قيمة المتغفير ب ناتج خارج اداة العرض Ls -l فاذا قمت ب عرض قيمة المتغير echo $a يكون ناتج المتغير ب قيمة ناتج اداة العرض Ls بفرض الن نريد وضع قيمة المتغير بقيمة نصية فيكون هناك 3طرق a=hellow world و لكن هنا هنا اظهار قيمة المتغير يكون Hellow و لمعالجة هذة المشكلة يكون ك التي “ a=’ hellow world ‘ or A = “ hellow world و هناك 3طرق لعرض النص و تكون كالتتي echo hellow world Output : hellow world echo $a Output : hellow world echo $A “ Output : hellow world و الفرق بي ال " وال ' يكون فى عرض المتغير ف مثلن لو نريد عرض قيمة متغير داخل الخر بستخدام السينجل كوتيشن يكون الخارج ك التي ‘ A=’ my life ’B=’this is $A echo $B Out put : this is $A و لكن لو استخدمنا ال " يكون الناتج ك التي ”a=”my life “ B=” this is $a echo $B Output : this is my life فعند استخدام ال “ يمكنط اضافة نص على الخير لكمال بعضهم وهذا سوف تحتاجة فى كتابة السكربتات و اشياء اخري كثيرة مثل Grep & sed فى المستويات القادمة Test :دي اداة موجودة ب لينكس و تتولي امر المقارانات ف مثلن فى C++ تكون المقرنة ب علمة == = =< => < > و لكون اذا كتبت هنا ممملممم عرفة خصائصها Man test فيكون الظاهر ك التي -le – less than or equal اصغر من او يساومي =< -gt – grater than > اكبر من -lt less than < اصغر من -ne not equal ل يساوي ! -e existance اختبار وجود الملف ام ل فمثلن لو ارددنا كتابة جملة If statement يكون ك التي ] If [ -e foo enterونضغط فيظهر فى الترمينال علمة اكبر من تكتبت بجانبها فتكتب ب الشكل التي ] If [ -e foo >then ”echo “hellow >else “ >echo “done >fi فيكون اول سطر بمعني تحقق من وجود الملف فوو ف لو كان موجود اخرج كلمة Hellow و اذا كان غير موجود فتخرج كلمة Done اما كلمة Fi فمعناها انهي ال If statement الن لنكتب اول سكريبت نقوم ب الذهاب الي الترمينال و نعمل ملف كتابة اسمة gedit Desktop.sh عند فتح هذا الملف نكتب التي #!/bin/bash هذا السطر معناة انك تدل ملف السكريبت على نوع الترمينال حقتة و هي الن Bash shell cd ~/Desktop “ Echo “hellow ser ف سطر الول و السطران هذا بمعني اذهب للديسك توب و اخرج رسالة Hellow ser نص السكريب كامل من الداخل #!/bin/bash cd ~/Desktop ”echo “hellow ser ثم نقم ب الحفظ الن عند تنفيذ السكريبت لن يتم تنفيذة و هذا بسبب الصلحيات ف علينا تغير صلحيتة و اعطاءة امكانية التنفيذ عن طريق Chmod 700 Desktop.sh والن يمكننا تشغيلة عن طريق ./Desktop.sh الل عند تشغيلة ب هذة الطريقة يظهر كلمة هالو سير فقط و هذا لن امر التشغيل هذا معناة انهي السكريبت و اخرد الناتج النهائي دون الذهاب ل اي مكان مكتوب ب الداخل ف لو اردت رؤيتة يعمل كامل فعليك ب كتابة امر التشغيل هكذا . Desktop.sh و عندها تجدة نقلك الي مسار الديسك توب ملحظة هيتم اعادة شرح Exist status + PATHS فى المحاضرة القادمة نظرا لن انا لو فكرت اكتبهم هطول على الفاضي يجي 15صفحة ف نفهمها احسن