Bash scripting

From binaryoption
Jump to navigation Jump to search
Баннер1

```wiki

Bash scripting للمبتدئين

Bash scripting (أو برمجة شيل باش) هي طريقة قوية لأتمتة المهام في أنظمة التشغيل Linux و macOS. تعتبر Bash (Bourne Again Shell) واحدة من أكثر shells استخدامًا، وهي لغة برمجة كاملة الميزات تسمح لك بإنشاء برامج صغيرة (scripts) لتنفيذ سلسلة من الأوامر تلقائيًا. هذا المقال موجه للمبتدئين، ويهدف إلى تزويدك بالأساسيات اللازمة لفهم وكتابة نصوص Bash بسيطة. سوف نتطرق إلى المفاهيم الأساسية، بما في ذلك المتغيرات، الشروط، الحلقات، والدوال، بالإضافة إلى بعض الأمثلة العملية. على الرغم من أن هذا المقال يركز على Bash، فإن العديد من المفاهيم قابلة للتطبيق على shells أخرى أيضًا.

ما هو Bash؟

Bash هو مترجم أوامر (command interpreter) و shell، مما يعني أنه يفسر الأوامر التي تكتبها وينفذها. عندما تفتح نافذة طرفية (terminal)، فأنت تتفاعل مباشرة مع shell. يمكنك كتابة أوامر بسيطة مثل `ls` (لعرض قائمة الملفات) أو `cd` (لتغيير الدليل). ولكن باستخدام Bash scripting، يمكنك تجميع هذه الأوامر في ملف نصي، وجعله قابلاً للتنفيذ، مما يسمح لك بتنفيذ سلسلة من الأوامر بنقرة زر واحدة أو عن طريق جدولة التنفيذ. هذا مفيد بشكل خاص للمهام المتكررة أو المعقدة.

أول نص Bash: "Hello, World!"

لنبدأ بأبسط مثال: برنامج "Hello, World!". افتح محرر نصوص (مثل nano أو vim أو gedit) وأدخل السطر التالي:

```bash

  1. !/bin/bash

echo "Hello, World!" ```

احفظ الملف باسم `hello.sh`. السطر الأول (`#!/bin/bash`) يسمى "shebang"، وهو يخبر النظام أي مترجم أوامر (في هذه الحالة، Bash) يجب استخدامه لتنفيذ هذا النص. السطر الثاني (`echo "Hello, World!"`) يستخدم الأمر `echo` لعرض النص "Hello, World!" على الشاشة.

لجعل الملف قابلاً للتنفيذ، استخدم الأمر `chmod`:

```bash chmod +x hello.sh ```

الآن يمكنك تشغيل النص باستخدام:

```bash ./hello.sh ```

سيظهر النص "Hello, World!" على الشاشة.

المتغيرات

المتغيرات هي حاويات لتخزين البيانات. في Bash، يمكنك تعريف متغير ببساطة عن طريق تعيين قيمة له:

```bash name="John Doe" echo "Hello, $name!" ```

لاحظ استخدام علامة الدولار (`$`) قبل اسم المتغير للوصول إلى قيمته. يمكنك أيضًا استخدام الأقواس المتعرجة (`{}`) لتوضيح اسم المتغير، خاصةً إذا كان يتبعه نص آخر:

```bash echo "Hello, ${name}!" ```

هذا ضروري في بعض الحالات لتجنب الالتباس.

  • **المتغيرات المحلية:** يتم تعريفها داخل دالة أو نص وتكون متاحة فقط داخل هذا النطاق.
  • **المتغيرات العامة:** يتم تعريفها خارج أي دالة أو نص وتكون متاحة لجميع النصوص الفرعية.

الإدخال والمخرجات

  • **الإدخال:** يمكنك الحصول على إدخال من المستخدم باستخدام الأمر `read`:

```bash read -p "Enter your name: " name echo "Hello, $name!" ```

الخيار `-p` يسمح لك بعرض رسالة للمستخدم قبل قراءة الإدخال.

  • **المخرجات:** الأمر `echo` هو أبسط طريقة لعرض المخرجات. يمكنك أيضًا إعادة توجيه المخرجات إلى ملف باستخدام عامل التشغيل `>`:

```bash echo "This is output" > output.txt ```

هذا سيخلق ملفًا باسم `output.txt` (إذا لم يكن موجودًا) أو سيستبدل محتوياته إذا كان موجودًا، وسيضع النص "This is output" داخله. لإضافة المخرجات إلى ملف موجود، استخدم عامل التشغيل `>>`:

```bash echo "This is more output" >> output.txt ```

الشروط: if, then, else

تسمح لك الشروط بتنفيذ أوامر مختلفة بناءً على شرط معين. بناء الجملة الأساسي هو:

```bash if [ condition ]; then

 commands

else

 commands

fi ```

  • `[` و `]` هما جزء من الأمر `test` ويستخدمان لتقييم الشرط.
  • `condition` هو تعبير منطقي.
  • `then` يشير إلى بداية كتلة الأوامر التي سيتم تنفيذها إذا كان الشرط صحيحًا.
  • `else` (اختياري) يشير إلى بداية كتلة الأوامر التي سيتم تنفيذها إذا كان الشرط خاطئًا.
  • `fi` يشير إلى نهاية كتلة `if`.

أمثلة على الشروط:

  • `[ "$name" == "John Doe" ]`: يتحقق مما إذا كانت قيمة المتغير `name` تساوي "John Doe".
  • `[ -f "file.txt" ]`: يتحقق مما إذا كان الملف `file.txt` موجودًا.
  • `[ $age -gt 18 ]`: يتحقق مما إذا كانت قيمة المتغير `age` أكبر من 18.

الحلقات: for, while

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

  • **حلقة for:** تستخدم لتكرار تنفيذ الأوامر لعدد محدد من المرات أو على قائمة من العناصر:

```bash for i in 1 2 3 4 5; do

 echo "Number: $i"

done ```

أو:

```bash for file in *.txt; do

 echo "File: $file"

done ```

  • **حلقة while:** تستخدم لتكرار تنفيذ الأوامر طالما أن شرطًا معينًا صحيحًا:

```bash count=1 while [ $count -le 5 ]; do

 echo "Count: $count"
 count=$((count + 1))

done ```

الدوال

تسمح لك الدوال بتجميع مجموعة من الأوامر في وحدة قابلة لإعادة الاستخدام. بناء الجملة الأساسي هو:

```bash function function_name() {

 commands

} ```

أو:

```bash function_name() {

 commands

} ```

مثال:

```bash greet() {

 echo "Hello, $1!"

} ```

يمكنك استدعاء الدالة باستخدام:

```bash greet "Jane Doe" ```

سيظهر النص "Hello, Jane Doe!" على الشاشة.

التعامل مع الأخطاء

من المهم التعامل مع الأخطاء في نصوص Bash. يمكنك استخدام الأمر `set -e` لإجبار النص على الخروج فورًا إذا فشل أي أمر. يمكنك أيضًا استخدام الأمر `||` (OR) لتنفيذ أمر بديل إذا فشل الأمر الأول:

```bash command || echo "Command failed" ```

يمكنك أيضًا التقاط رمز الخروج للأمر باستخدام المتغير `$?`:

```bash command if [ $? -ne 0 ]; then

 echo "Command failed with exit code $?"

fi ```

أمثلة عملية

  • **نسخ ملفات متعددة:**

```bash for file in *.txt; do

 cp "$file" /backup/

done ```

  • **البحث عن ملفات أكبر من حجم معين:**

```bash find . -type f -size +1M ```

  • **حذف ملفات قديمة:**

```bash find . -type f -mtime +30 -delete ```

  • **أتمتة عملية النسخ الاحتياطي:**

```bash

  1. !/bin/bash

backup_dir="/backup" date=$(date +%Y-%m-%d) tar -czvf "$backup_dir/backup-$date.tar.gz" /home/user/documents ```

استراتيجيات الخيارات الثنائية و Bash

يمكن استخدام Bash scripting لأتمتة بعض جوانب تداول الخيارات الثنائية، على الرغم من أن هذا يتطلب حذرًا شديدًا وفهمًا عميقًا للمخاطر. فيما يلي بعض الأمثلة (للتوضيح فقط، وليست نصيحة استثمارية):

  • **تحميل بيانات تاريخية:** يمكن استخدام Bash لتنزيل بيانات تاريخية للأسعار من مصادر مختلفة.
  • **تنفيذ استراتيجيات بسيطة:** يمكن كتابة نصوص Bash لتنفيذ استراتيجيات تداول بسيطة بناءً على قواعد محددة مسبقًا. على سبيل المثال، استراتيجية تداول بناءً على المتوسطات المتحركة. (Moving Averages)
  • **إرسال تنبيهات:** يمكن استخدام Bash لإرسال تنبيهات عبر البريد الإلكتروني أو الرسائل النصية عندما تتحقق شروط معينة.
  • **تحليل حجم التداول:** يمكن استخدام Bash لتحليل بيانات حجم التداول والبحث عن الأنماط.
  • **تنفيذ استراتيجيات مثل:**
   *   **استراتيجية الاختراق (Breakout Strategy):** يمكن كتابة نص bash لمراقبة الأسعار وتنفيذ تداول عند اختراق مستوى معين.
   *   **استراتيجية ارتداد الاتجاه (Trend Reversal Strategy):** يمكن استخدام Script لمراقبة المؤشرات مثل RSI و MACD لتحديد فرص ارتداد الاتجاه.
   *   **استراتيجية تداول النطاق (Range Trading Strategy):** يمكن استخدام Script لتحديد النطاقات السعرية وتنفيذ تداولات عند الوصول إلى الحدود العليا والدنيا.
   *   **استراتيجية مارتينجال (Martingale Strategy):** (تحذير: استراتيجية عالية المخاطر) يمكن استخدام Script لمضاعفة حجم التداول بعد كل خسارة.
   *   **استراتيجية فيبوناتشي (Fibonacci Strategy):** يمكن استخدام Script لحساب مستويات فيبوناتشي وتنفيذ تداولات بناءً عليها.
    • تحذير هام:** تداول الخيارات الثنائية ينطوي على مخاطر عالية. لا تستخدم Bash scripting لتداول الخيارات الثنائية إلا إذا كنت تفهم المخاطر تمامًا ولديك خبرة في التداول. لا تعتمد على Bash scripting كحل "سحري" لتحقيق الأرباح. استخدمه كأداة للمساعدة في التحليل والأتمتة، ولكن دائمًا اتخذ قرارات التداول الخاصة بك بناءً على بحثك الخاص وتقييمك للمخاطر. استشر مستشارًا ماليًا قبل اتخاذ أي قرارات استثمارية.
  • **مؤشرات فنية:** يمكن استخدام Bash scripting لتنفيذ حسابات المؤشرات الفنية مثل:
   *   **مؤشر القوة النسبية (RSI)**
   *   **مؤشر المتوسط المتحرك التقاربي التباعدي (MACD)**
   *   **مؤشر ستوكاستيك (Stochastic Oscillator)**
   *   **مؤشر بولينجر باندز (Bollinger Bands)**
   *   **مؤشر بارابوليك SAR (Parabolic SAR)**
  • **تحليل الاتجاهات:** يمكن استخدام Bash scripting لتحليل الاتجاهات في الأسعار باستخدام تقنيات مثل:
   *   **خطوط الاتجاه (Trend Lines)**
   *   **نماذج الشموع اليابانية (Candlestick Patterns)**
   *   **مستويات الدعم والمقاومة (Support and Resistance Levels)**
  • **استراتيجيات إدارة المخاطر:** يمكن استخدام Bash scripting لتطبيق استراتيجيات إدارة المخاطر مثل:
   *   **تحديد حجم المركز (Position Sizing)**
   *   **أوامر وقف الخسارة (Stop-Loss Orders)**
   *   **أوامر جني الأرباح (Take-Profit Orders)**

موارد إضافية

الخلاصة

Bash scripting هي أداة قوية لأتمتة المهام في أنظمة التشغيل Linux و macOS. من خلال فهم الأساسيات التي تمت تغطيتها في هذا المقال، يمكنك البدء في كتابة نصوص Bash بسيطة لتنفيذ المهام المتكررة وتوفير الوقت. تذكر أن التدريب والممارسة هما المفتاح لإتقان Bash scripting. يمكن استخدام Bash scripting في سياق الخيارات الثنائية، ولكن يجب القيام بذلك بحذر شديد وفهم كامل للمخاطر. ```

ابدأ التداول الآن

سجّل في IQ Option (الحد الأدنى للإيداع 10 دولار) افتح حساباً في Pocket Option (الحد الأدنى للإيداع 5 دولار)

انضم إلى مجتمعنا

اشترك في قناة Telegram الخاصة بنا @strategybin لتصلك: ✓ إشارات تداول يومية ✓ تحليلات استراتيجية حصرية ✓ تنبيهات اتجاهات السوق ✓ مواد تعليمية للمبتدئين

Баннер