الأربعاء، 22 أغسطس 2012

BASH Script: قراءة كلمات السر من المستخدم

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

قد يحتاج المبرمج للحصول على بيانات من المستخدم من دون عرضها على الشاشة مثل كلمات السر و لذا تستطيع أستخدام الأمر read كالتالي :
#!/bin/bash

echo "Enter the password:"

read -s password

echo "Password:"$password

فقط قم بأضافة المعامل s- بعد الأمر read ليتم أخفاء القيم عن الشاشة .

BASH SCRIPT: البحث و الأستبدال في النصوص

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

يحتوي سكربيت الباش على العديد من الخصائص لتعامل مع النصوص و منها البحث و الأستبدال بواسطة هذه الصيغة :
${Text/old/new}

و هذا السكريبت مثال عملي على  أستخدام هذه الصيغة :

#!/bin/bash

text="Hello,World"

old="World"

new="UAE"

echo "old text:" $text

newtext=${text/$old/$new}

echo "new text:" $newtext


هنالك ملاحظة عند أستخدام هذه الصيغة , تلاحظ اننا لم نستخدم $ قبل المتغير text حيث أن كتابة المتغير بهذه الصورة $text سيؤدي لخطأ عند التنفيذ .

BASH SCRIPT: تنفيذ حلقة تكرارية في الخلفية

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

تستطيع تنفيذ حلقة تكرارية في الباش سكريبت في الخلفية , بدل من الأنتظار لمتابعة التنفيذ , و ذلك كهذا المثال :
#!/bin/bash

for i in {1..10}
do
echo -n $i
done&

for i in a b c d f
do
echo -n $i
done

echo


 تلاحظ اننا في الحلقة التكرارية الأولى وضعنا & في النهاية و الذي يستخدم لنقل البرامج للخلفية في لينكس :

for i in {1..10}
do
echo -n $i
done&

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

BASH SCRIPT:طباعة الوقت الذي أستغرقه تنفيذ السكريبت

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

يتوافر في سكريبت الباش المتغير الخاص SECONDS الذي يمكننا من معرفة عدد الثواني منذ بدأ التنفيذ إلى حين أستدعاء المتغير و يمكن أستخدامه عن نهاية السكريبت لأعطاءنا الوقت الكلي بالثواني لتنفيذ السكريبت كما في مثالنا التالي :
#!/bin/bash

sleep 10

echo "Total time taken by this script:"$SECONDS

السبت، 28 يوليو 2012

تثبيت مكتبة opencv في البايثون


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

تشتهر مكتبة opencv البرمجية بأستخدمها في التعرف على الأنماط و الأشكال في الصور و الفيديو , و ما يميز هذه المكتبة كونها تدعم منصات متعددة ( ويندوز , ماكنتوش , لينكس ) و يمكن أستخدمها في لغة C و C++ و البايثون .
و في هذه السلسة سوف أستخدم واجهة opencv الخاصة باللغة البايثون لسهولة هذه اللغة بالنسبة للمبرمجين الهواة و سرعة كتابة البرامج باللغة البايثون .


التثبيت :

* أن مكتبة opencv تدعم الأصدارتين 2.7 و 2.6 , وإلى الأن لا يوجد دعم رسمي للأصدارة 3.0 .
  • لينكس :

    بالنسبة لمستخدمي نظام لينكس نسخة ubuntu كما ما تحتاجه هو تنفيذ هذا الأمر في موجه الأوامر :
sudo apt-get install python-opencv

السبت، 14 يوليو 2012

التحديث الأخير من شركة Symantec يعطب ويندوز

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


من المفترض أن تحديث برنامج مكافحة الفيروسات يزيد من كفاءة نظام التشغيل و لكن يبدو أن تحديث شركة Symantec الأخير يتسبب بعكس, حيث عانى مستخدموا برنامج مكافحة الفيروسات الشهير من ظهور شاشة الموت الزرقاء في أنظمته بعد تحديث برنامج مكافحة الفيروسات .

الحل :

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

أما الحل الذي أنصح به فأترك نظام الويندوز و أنتقل لنظام لينكس :-) .

الجمعة، 13 يوليو 2012

مكتبة turtle البرمجية في لغة البايثون

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

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


  • البرنامج الأول :

import turtle # أستيراد المكتبة البرمجية

wn = turtle.Screen() # أنشاء كائن خاص بالمكتبة 

alex = turtle.Turtle() # أنشاء كائن "turtle"  


alex.forward(50) # تحريك السلحفاة للأمام مسافة 50

alex.left(90) # لكي تستدير السلحفاة بأتجاه اليسار مقدار 90 درجة

alex.forward(30) # لكي تتحرك السلحفاة بأتجاه الأمام مسافة 30 



wn.mainloop(# أنتظر المستخدم لكي ينهي النافذة الخاصة بالبرنامج


الثلاثاء، 29 مايو 2012

تغير رسالة الترحيب في موجه الأوامر ( لينكس)

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

عند الأتصال بسيرفر لينكس بأستخدام برتوكول SSH يتم عرض رسالة ترحيب و لتغير هذه الرسالة يمكنك أستخدام  ملف /etc/motd و ذلك بتعديل محتوياته بواسطة أي محرر نصوص كما في هذا المثال :

sudo editor /etc/motd

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

السبت، 26 مايو 2012

موقع Crunchroll لأحدث الأنمي و الدراما اليابانية

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

لمدمني الأنمي و الدراما اليابانية " و أنا منهم :-) " , أقدم لكم موقع Crunchroll الذي يحتوي على مجموعة كبيرة من المسلسلات و الدراما اليابانية الشهيرة مثل نارتو .

تستطيع مشاهدة الأنمي مباشرة على الموقع , و سوف يعرض لك أثناء مشاهدة الأنمي أعلانات مدتها 30 ثانية في حالة عدم تسجيلك في الحساب المدفوع الذي يحتوي على الكثير من الميزات مثل مشاهدة البرنامج بعد ساعة من بثه في اليابان .

و أهم ما في الموضوع أن الأنمي لن يتم حذفه بسبب حقوق النشر , لأن هذا الموقع قانوني 100% .

الجمعة، 25 مايو 2012

تحويل صفحة الأنترنت لملف pdf في متصفح قوقل كروم


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

يحتوي متصفح قوقل كروم على خاصية رائعة لحفظ صفحات الأنترنت بصيغة pdf مما يسهل حفظ المقالات بطريقة أفضل من الطريق التقليدية بحفظ الصفحة بصيغة HTML .

و لحفظ أي صفحة في متصفح قوقل كروم أتبع هذه الخطوات :

  • قم بضغط الزرين (CTRL+P) في المتصفح و ذلك بعد تحميل الصفحة , أو أستخدام القائمة الرئيسية و أختر الأمر (Print) :
 
  • ستظهر لك صفحة مشابه لهذه , قم بتغير الوجهه "Destination" إلى "Print to PDF" :
 
 
  • أضغط على زر الطباعة "Print" لكي يظهر لك زر الحفظ ,  قم بتسمية الملف وحفظه :