العودة   منتديات أصول > أصول التقنية > أصول برمجة
 
 

أصول برمجة دروس ومشاريع برمجية php - c - asp - perl - python - java script - ajax - bash

إضافة رد
 
LinkBack أدوات الموضوع انواع عرض الموضوع
 
قديم 05-10-2009, 06:50 AM   #1 (permalink)
رجل أقـل معـرفـة

اوسمتي

 
الصورة الرمزية المحترف
 
تاريخ التسجيل: Jun 2004
الدولة: مــصـــــر
العمر: 29
المشاركات: 1,184
رايق
معدل تقييم المستوى: 10
المحترف is a name known to allالمحترف is a name known to allالمحترف is a name known to allالمحترف is a name known to allالمحترف is a name known to allالمحترف is a name known to all
Arrow مربعات الحوار في الباش bash - dialog

بسم الله الرحمن الرحيم
الحمدلله والصلاة والسلام على رسول الله وعلى آله وصحبه أجمعين
اليوم ان شاء الله نتحدث عن أداة جميلة في استخدامها عند كتابتك لسكريبت باش ..
وهي اداة الحوار dialog

بالطبع كل ما كان السكريبت الذي تقوم بكتابته متحاوراً أو متفاعلا مع المستخدم كلما كان أفضل بكثير ..
ولقد تحدث الأخ نبيل في موضوعه علي هذا الرابط
[فقط الأعضاء المسجلين والمفعلين يمكنهم رؤية الوصلات . إضغط هنا للتسجيل]
عن العبارة read والتي تسأل مستخدم السكريبت سؤال وتطلب منه الاجابة عليه ..
ومثال علي ذلك ..
قم بإنشاء ملف جديد وليكن بإسم osowl.sh باستخدام محرر النصوص الذي يروق لك .. أو قم بتنفيذ هذه الخطوات معي :
كود:
cat > osowl.sh
كود:
#!/bin/sh
echo "Hello to bash scripting do you feel it is nice lang.? Type [y] for yes Or [n] for no" ; read answer
قم بحفظ الملف بالضغط علي ctrl +d
الان قم بتشغيل السكريبت sh osowl.sh
سوف يسأل الان السؤال الذي كتبناه به ويطلب منك الاجابة اما نعم أو لا ..
كما في الصورة :


ملحوظة ::
الأمر الاول cat > osowl.sh هو لانشاء ملف جديد باسم osowl.sh ويجب مراعاة أنه لا يوجد لديك ملف بهذا الاسم .
لذا نستطيع استخدام أمر cat في فتح وانشاء ملفات جديدة مثلما هو الحال مع باقي المحررات مثل vi و nano وغيرها ..


الآن سوف نري كيف يكون الحال مع استخدام مربعات الحوار أو الأداة dialog
سوف نعيد نفس الخطوات ولكن مع تغيير الكود :
نفتح ملف جديد او نستخدم الامر cat كما في المثال السابق :

كود:
cat > osowl1.sh
ونضغط انتر

نكتب الكود التالي :
محتوى مخفي


نحفظ الملف بالضغط علي ctrl +d

نقوم بتشغيل السكريبت بالأمر sh osowl1.sh
سوف تظهر لنا النتيجة كما بالصورة التالية :



الآن نأتي لشرح الكود بشئ من التفصيل :

محتوى مخفي

نأتي الآن للأرقام 7 ثم 70
الرقم الأول من اليسار وهو 7 وهذا يحدد ارتفاع مربع الحوار الذي ستظهر به الرسالة وبالطبع نقوم بزيادته أو نقصانه حسب حجم وطول أو عدد اسطر الرسالة التي نريدها ان تظهر للمستخدم .

الرقم الثاني من جهة اليسار وهو في مثالنا 70 وهذا يحدد عرض مربع الحوار الذي ستظهر به الرسالة وبالطبع نقوم بزيادته أو نقصانه حسب حجم وطول أو عدد اسطر الرسالة التي نريدها ان تظهر للمستخدم .

وأخيرا كلمة او دالة read والتي توقف عمل السكريبت مؤقتا لحين وصول رد من المستخدم وكما في المثال السابق لا يوجد اجابة محددة مطلوبة من المستخدم فقط الرسالة تقول في نهايتها :
press any key to continue اضغط اي مفتاح للاستمرار .

كان ذلك مثالا سريعا لعمل سكريبت يتفاعل مع المستخدم .. ولكن الجدير بالذكر هو أن الأداة dialog تمكننا من استخدام اكثر من نوع من مربعات الحوار .. مثل قائمة بها خيارات متعددة أو مربع حوار لادخال بيانات أو مربع حوار يطلب تأكيد المستخدم علي الاستمرار او التراجع وهكذا ..

تعالوا نري امثلة لهذه الأدوات ..

ولكن اسمحوا لي الآن حيث داهمني الوقت .. ولكن في أقرب قريب سوف اكتب الباقي بإذن الله

وأحب أن أنوه بأن جميع الحقوق محفوظة لمنتديات أصول .. لا بأس من نقل الموضوع ولكن يرجي ذكر الرابط الأصلي للموضوع .
أخوكم
-المحترف ,
__________________

قيل : الدنيا كلها ظلمات إلا موضع العلم …
والعلم كله هباء إلا موضع العمل …
والعمل كله هباء إلا موضع الإخلاص …
وقيل .. قيّدوا العلم بالكتب .. وقيدوا النعم بالشكر .

التعديل الأخير تم بواسطة المحترف ; 05-19-2009 الساعة 03:54 PM
المحترف غير متواجد حالياً   رد مع اقتباس
 
 
 
قديم 05-10-2009, 06:50 AM   #2 (permalink)
أصــــول
 
تاريخ التسجيل: Feb 2007
المشاركات: 1,687
رايق
معدل تقييم المستوى: 10
osowl.cOm is a glorious beacon of lightosowl.cOm is a glorious beacon of lightosowl.cOm is a glorious beacon of lightosowl.cOm is a glorious beacon of lightosowl.cOm is a glorious beacon of lightosowl.cOm is a glorious beacon of light
افتراضي

شكرا لهذا الموضوع الرائع ومن رائع لأروع إن شاء الله
__________________
عالم من الإبداع osowl.com
الأقوي والأفضل Aldwlya.com
Servers Administration
Security & Devlopement

osowl.cOm غير متواجد حالياً   رد مع اقتباس
 
 
 
قديم 05-10-2009, 09:28 PM   #3 (permalink)
عضو نشيط

اوسمتي

 
تاريخ التسجيل: Apr 2009
العمر: 24
المشاركات: 104
مشكوك فيه
معدل تقييم المستوى: 7
NabeeliumAttack is a glorious beacon of lightNabeeliumAttack is a glorious beacon of lightNabeeliumAttack is a glorious beacon of lightNabeeliumAttack is a glorious beacon of lightNabeeliumAttack is a glorious beacon of lightNabeeliumAttack is a glorious beacon of light
افتراضي رد: مربعات الحوار في الباش bash - dialog

تصدق بالله انت مفيش زيك

انا معجب جدا جدا جدا بالحركه اللي هي انك تختار من خلال gui او بمعنى اصح بتسمى tui

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

انا الحمد لله اعتقد اني على مستوى معقول من العلم - رغم كده ببص لنفسي على اني ولا حاجه وربنا اللي عالم ده - وبتطلع دائماً للأفضل والأحسن

على اي حال اقرأ الموضوع كويس جدا جدا جداً وبشكل دقيق جداً وافصصه صح وبعد كده هعلق بقى بذمه شويه ولو تسمحلي لو في اضافات بعد اذنك هضيف ،،،

تسلم ايديك على الموضوع الجميل ده ،،،، ومستنيين كل جديد ليك ،،، بارك الله فيك ،،، ،،،
NabeeliumAttack غير متواجد حالياً   رد مع اقتباس
 
 
 
قديم 05-11-2009, 04:53 AM   #4 (permalink)
عضو نشيط

اوسمتي

 
تاريخ التسجيل: Apr 2009
العمر: 24
المشاركات: 104
مشكوك فيه
معدل تقييم المستوى: 7
NabeeliumAttack is a glorious beacon of lightNabeeliumAttack is a glorious beacon of lightNabeeliumAttack is a glorious beacon of lightNabeeliumAttack is a glorious beacon of lightNabeeliumAttack is a glorious beacon of lightNabeeliumAttack is a glorious beacon of light
افتراضي رد: مربعات الحوار في الباش bash - dialog

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

بص ياسيدي انا قرأت الموضوع كويس جدا جدا جدا بس في نقطه حبيت الفت نظر الناس ليها :

في النسخ القديمه اللي زي حالاتي كده بحب اشتغل على redhat enterprise 4 او centos 4 مش هيكون في امر dialog طبعاً زي ما الناس كلها عارفه هنستعمل امر :

كود:
yum install dialog
او ممكن تخش على الموقع ده بحبه موووووووووووت :

كود:
rpm.pbobe.net
وتعمل سيرش على ملف dialog وعلى النسخه بتاعتك بعد ما تختارها من ادفانسيد .

على اي حال عايز اكتب اي حاجه بقى مينفعش كده يعني بس اعذرني اني كلامش مش هيكون دقيق قوي بس والله عايز اساعدك :

بصوا ياجماعه انا عملت سيرش على جوجل ولقيت سكربت هو كان مكتوب هندي باين مفهمتش منه حاجه على اي حال الكود اهه بعد ما خليته انجليزي هفهملكم الكود والأخ المحترف طبعاً بالتأكيد هيقول رأيه في اللي قلته :
كود:
dialog --inputbox "Do we do it or not?" 8 60
if [ $? != 0 ] ; then
clear
echo "Cancled ;-)"
exit
else
clear
echo "OK! Here we go..."
fi
نفصص بقى الكود حته حته :

الوقت انا فتحت ديالوج عشان يعمل الشكل بتاع الإطار بعد كده اديته ارتفاع 8 و عرض 60 كويس قوي عشانه

وكتبت في الديالوج Do we do it or not? ده اللي هيظهر في الديالوج وخد بالك ده inputbox يعني ممكن تدخل فيه اي حاجه

بعد كده قلتله لو ال exit status = صفر ده معناه ان العمليه اللي فوق نجحت - صفر يعني نجاح اي رقم غيره يعني فشل

قلتله لو ال exit status لا يساوي الصفر يعني فشل في الأمر اللي قبله اللي هو الديلوج اخرج من البرنامج وأكتب Cancled ;-) بعد ما تعمل كلير للشاشه .

اما لو النتيجه صحيحه ومفيش اي مشاكل امسح الشاشه وأكتب فيها OK! Here we go... وإنتهى البرنامج على كده

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

تحياتي للجميع وللمحترف شخصياً جدا جدا جداً ،،، الله معكم ،،، وتصبحوا على خير ،،،
NabeeliumAttack غير متواجد حالياً   رد مع اقتباس
 
 
 
قديم 05-11-2009, 05:17 AM   #5 (permalink)
عضو نشيط

اوسمتي

 
تاريخ التسجيل: Apr 2009
العمر: 24
المشاركات: 104
مشكوك فيه
معدل تقييم المستوى: 7
NabeeliumAttack is a glorious beacon of lightNabeeliumAttack is a glorious beacon of lightNabeeliumAttack is a glorious beacon of lightNabeeliumAttack is a glorious beacon of lightNabeeliumAttack is a glorious beacon of lightNabeeliumAttack is a glorious beacon of light
افتراضي رد: مربعات الحوار في الباش bash - dialog

عايز اضيف حاجه كمان ياجماعه ربما حد يكون بيبحث عنها انا كنت اعرف دي من زمان وبصراحه نسيتها بس لما بحثت عنها من شويه وصلتلها بس ببساطه لاني كنت عندي فكره عنها وهي اننا ممكن نعمل نفس موضوع الديالوج ده بس من gui الكلام ده ازاي من خلال الأمر :
zenity طبعاً ميتخيرش عن الأمر التاني بس ده امر من اوامر جنوم GUI

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



كود الصوره اللي فاتت دي للي يحب طبعاً :

كود:
#!/bin/bash

zenity --question --text="Are you sure you wish to proceed?"
شكراً ليكم وآسف اني خرجتكم من الموضوع ،،، تصبحوا على خير ،،،

التعديل الأخير تم بواسطة NabeeliumAttack ; 05-11-2009 الساعة 05:19 AM
NabeeliumAttack غير متواجد حالياً   رد مع اقتباس
 
 
 
قديم 05-11-2009, 07:44 AM   #6 (permalink)
أصـ(قلب)ــول

اوسمتي

 
الصورة الرمزية paradis
 
تاريخ التسجيل: Jul 2004
المشاركات: 1,939
وحيدة
معدل تقييم المستوى: 13
paradis is a glorious beacon of lightparadis is a glorious beacon of lightparadis is a glorious beacon of lightparadis is a glorious beacon of lightparadis is a glorious beacon of lightparadis is a glorious beacon of light
افتراضي مشاركة: مربعات الحوار في الباش bash - dialog

موفق خيي وجزاك الله خيرا اخي المحترف

وخيي نبيل يعطيك الف عافيه

الله يوفق الكل
__________________

بحبك يالبنان
paradis غير متواجد حالياً   رد مع اقتباس
 
 
 
قديم 05-19-2009, 03:22 PM   #7 (permalink)
رجل أقـل معـرفـة

اوسمتي

 
الصورة الرمزية المحترف
 
تاريخ التسجيل: Jun 2004
الدولة: مــصـــــر
العمر: 29
المشاركات: 1,184
رايق
معدل تقييم المستوى: 10
المحترف is a name known to allالمحترف is a name known to allالمحترف is a name known to allالمحترف is a name known to allالمحترف is a name known to allالمحترف is a name known to all
افتراضي رد: مربعات الحوار في الباش bash - dialog

السلام عليكم ورحمة الله وبركاته
شكرا لك اخي نبيل لحضورك واضافتك الرائعة ..

وشكرا لحضورك أختي باراديس ولا حرمنا الله منك ابدا ..

والان تعالوا بنا نكمل الموضوع ..

يتبع ..
__________________

قيل : الدنيا كلها ظلمات إلا موضع العلم …
والعلم كله هباء إلا موضع العمل …
والعمل كله هباء إلا موضع الإخلاص …
وقيل .. قيّدوا العلم بالكتب .. وقيدوا النعم بالشكر .
المحترف غير متواجد حالياً   رد مع اقتباس
 
 
 
قديم 05-19-2009, 03:51 PM   #8 (permalink)
رجل أقـل معـرفـة

اوسمتي

 
الصورة الرمزية المحترف
 
تاريخ التسجيل: Jun 2004
الدولة: مــصـــــر
العمر: 29
المشاركات: 1,184
رايق
معدل تقييم المستوى: 10
المحترف is a name known to allالمحترف is a name known to allالمحترف is a name known to allالمحترف is a name known to allالمحترف is a name known to allالمحترف is a name known to all
Thumbs up رد: مربعات الحوار في الباش bash - dialog

بسم الله الرحمن الرحيم

تحدثنا في بداية الموضوع عن احد مربعات الحوار التي يمكن وضعها بالبرنامج باستخدام الاداة dialog

وما تناولناه بالشرح كان مربع حوار عبارة عن رسالة معلومات تظهر للمستخدم infobox

والان سوف نتحدث عن مربع حوار اخر يتفاعل مع المستخدم وهو عبارة عن رسالة ايضا تظهر للمستخدم ولكن بها زر موافقة (ok)

افتح ملف جديد باسم osowl2.sh بواسطة محرر النصوص المفضل لديك وضع الكود التالي به :


كود:
#!/bin/sh

dialog --title "Hello to Bash - Dialog" --backtitle "Learning Bash" \
--msgbox "Hello Dear , we are trying to cover the bash scripting here in
Osowl.com , special greats to Nabeeluimattack and all Osowl.com members \
Please press any key to continue" 7 70 ; read
قم بحفظ الملف ثم تشغيله بالامر
sh osowl2.sh

سوف تظهر لك الصورة :


لو تلاحظ انه نفس الكود السابق في مثالنا الأول .. والفرق الوحيد هو في اسم مربع الحوار المراد وفي حالتنا هذه تم اختيار :
msgbox

وبعد تشغيل السكريبت سوف تلاحظ ظهور كلمة (ok) في اسفل الرسالة ويتوجب عليك ضغط انتر <<< ليس لديك خيار اخر

================================================== ===
نأتي لمربع حوار اخر نستطيع تصميمه باستخدام الاداة dialog

وهو اظهار مربع حوار للمستخدم يطلب منه تأكيد الاستمرار في الخطوة التالية من عمل السكريبت
حيث يظهر للمستخدم الاختيار ما بين نعم أو لأ yes or no
انظر لهذه الصورة :




سوف تجد كما في الصورة مربع حوار يطلب من المستخدم تأكيد الاستمرار ..
والا تعالوا ننظر الي الكود :
افتح ملف جديد باسم osowl3.sh بمحرر النصوص المفضل لديك واكتب الكود التالي :

كود:
#!/bin/sh

dialog --title "Hello to Bash - Dialog" --backtitle "Learning Bash" \
--yesno "Hello Dear , we are trying to cover the bash scripting here in
Osowl.com , do you want to continue with us ?" 7 70 ; read
احفظ الملف وقم بتشغيله بالامر
sh osowl3.sh

الجديد في هذا الكود هو فقط في نوع مربع الحوار المراد استخدامه وهو
كود:
--yesno
اعتقد الخطوات سهلة جدا والموضوع مهضوم وليس به اي صعوبات ..
أتمني ذلك ومن لديه استفسار فليتفضل ..

وأستأذنكم الان ونكمل في وقت لاحق بإذن الله

للجميع مني أطيب تحية
__________________

قيل : الدنيا كلها ظلمات إلا موضع العلم …
والعلم كله هباء إلا موضع العمل …
والعمل كله هباء إلا موضع الإخلاص …
وقيل .. قيّدوا العلم بالكتب .. وقيدوا النعم بالشكر .
المحترف غير متواجد حالياً   رد مع اقتباس
 
 
 
قديم 05-22-2009, 11:09 PM   #9 (permalink)
عضو نشيط

اوسمتي

 
تاريخ التسجيل: Apr 2009
العمر: 24
المشاركات: 104
مشكوك فيه
معدل تقييم المستوى: 7
NabeeliumAttack is a glorious beacon of lightNabeeliumAttack is a glorious beacon of lightNabeeliumAttack is a glorious beacon of lightNabeeliumAttack is a glorious beacon of lightNabeeliumAttack is a glorious beacon of lightNabeeliumAttack is a glorious beacon of light
افتراضي رد: مربعات الحوار في الباش bash - dialog

شكراً معلمي الفاضل على الإضافه وجاري التجربه

شكراً جزيلا لك ،،، وجعله الله في ميزان حسناتك ،،،

تحياتي ،،،
NabeeliumAttack غير متواجد حالياً   رد مع اقتباس
 
 
 
قديم 08-03-2010, 03:30 AM   #10 (permalink)
عضو جديد
 
تاريخ التسجيل: Aug 2010
المشاركات: 1
رايق
معدل تقييم المستوى: 0
mohamed200 will become famous soon enough
افتراضي رد: مربعات الحوار في الباش bash - dialog

سلام عليكم

تسلم ايدك على الشرح
mohamed200 غير متواجد حالياً   رد مع اقتباس
 
 
إضافة رد

مواقع النشر (المفضلة)

 
الكلمات الدلالية (Tags)
مربعات الحوار, bash, dialog utility, برمجة الباش, infobox, interface, menubox


الذين يشاهدون محتوى الموضوع الآن : 1 ( الأعضاء 0 والزوار 1)
 

إخفاء / عرض قائمة من شاهد الموضوع عدد الأعضاء الذين شاهدوا هذا الموضوع : 12
مسلم, المحترف, الظبى الابيض, احمد شوقى, CV16, EL.ALFY, درة القلوب, linux security, mohamed200, NabeeliumAttack, paradis
أدوات الموضوع
انواع عرض الموضوع

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

BB code is متاحة
كود [IMG] متاحة
كود HTML معطلة
Trackbacks are متاحة
Pingbacks are متاحة
Refbacks are متاحة

الانتقال السريع

المواضيع المتشابهه
الموضوع كاتب الموضوع المنتدى مشاركات آخر مشاركة
مربعات الحوار الرسوميه في bash - Zenity NabeeliumAttack أصول برمجة 6 07-02-2009 04:28 PM
اصول Bash Scripting NabeeliumAttack أصول برمجة 7 04-30-2009 10:53 PM
سيكون الحوار لغتنا soheel أصول النقاش الجاد 4 07-01-2007 08:27 PM
عصر الحوار وحسن الجوار. نادين أصول العام 5 03-10-2007 10:04 PM
فنون الحوار soheel أصول النقاش الجاد 3 12-23-2004 03:13 PM


الساعة الآن 12:05 AM.


Powered by vBulletin® Version 3.8.1
Copyright ©2000 - 2010, Jelsoft Enterprises Ltd.
منتديات أصول , الدولية , الدولية للحاسبات والانظمة