Environment Variables في Linux: استخدام export وPATH عمليًا

متغيرات البيئة في Linux تتحكم في سلوك الأوامر والبرامج بدون تعديل الكود نفسه. فهمها يوفر وقتا كبيرا في الإعداد والتشغيل.

في هذا الدرس ستتعلم كيف تنشئ المتغيرات وتستخدمها بشكل مؤقت أو دائم.

ما هي Environment Variables في Linux؟

  • قيم نصية مخزنة في shell environment
  • تستخدمها البرامج أثناء التشغيل
  • أمثلة شائعة: PATH, HOME, USER, SHELL

عرض متغيرات البيئة الحالية

env
printenv
echo $HOME
echo $PATH

استخدم echo $VAR_NAME لعرض قيمة متغير محدد.

إنشاء متغير مؤقت داخل الجلسة الحالية

MY_APP_ENV=dev
echo $MY_APP_ENV

بهذه الطريقة المتغير محلي في shell الحالي فقط، وقد لا يورث للبرامج الفرعية.

تصدير المتغير باستخدام export

export MY_APP_ENV=dev
printenv MY_APP_ENV

مع export يصبح المتغير متاحا للعمليات الفرعية التي تُشغّلها من نفس الجلسة.

فهم متغير PATH في Linux

PATH هو قائمة مسارات يبحث فيها النظام عن الأوامر التنفيذية.

echo $PATH
which python3
which ls

إذا كان ملف تنفيذي موجودا في أحد مسارات PATH، يمكنك تشغيله بدون كتابة المسار الكامل.

إضافة مسار إلى PATH (مؤقت)

export PATH="$PATH:/opt/mytools/bin"

هذا التعديل يضيع بعد إغلاق الجلسة الحالية.

جعل المتغيرات دائمة عبر .bashrc و.profile

nano ~/.bashrc
# أضف:
export MY_APP_ENV=production
export PATH="$PATH:$HOME/.local/bin"

source ~/.bashrc
الملف متى يستخدم غالبا
~/.bashrc جلسات shell التفاعلية
~/.profile جلسات تسجيل الدخول (login shell)
/etc/environment متغيرات عامة على مستوى النظام

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

APP_ENV=staging DEBUG=true php app.php

هذه الطريقة ممتازة لاختبار إعدادات مختلفة بسرعة بدون تعديل ملفات دائمة.

أفضل ممارسات التعامل مع Environment Variables

  • استخدم أسماء واضحة وبحروف كبيرة مثل APP_ENV
  • تجنب وضع كلمات مرور مباشرة في ملفات مكشوفة
  • احتفظ بالمتغيرات الدائمة المنظمة داخل ملف واحد
  • اختبر القيم بعد التعديل عبر echo أو printenv
تنبيه أمني: لا تخزن أسرار الإنتاج في ملفات عامة أو مستودعات Git.

تمرين عملي: إنشاء واختبار متغيرات بيئة

export COURSE_NAME="linux-basics"
echo $COURSE_NAME
echo 'export COURSE_LEVEL="beginner"' >> ~/.bashrc
source ~/.bashrc
echo $COURSE_LEVEL

إذا ظهرت القيم بشكل صحيح قبل وبعد source فأنت أتقنت الأساس.

FAQ: أسئلة شائعة حول متغيرات البيئة في Linux

ما هي متغيرات البيئة في Linux؟

هي قيم ديناميكية يستخدمها النظام والبرامج مثل PATH وHOME لتحديد السلوك والمسارات والإعدادات.

ما الفرق بين متغير مؤقت ومتغير دائم؟

المتغير المؤقت يعمل داخل الجلسة الحالية فقط، بينما المتغير الدائم يُحفظ في ملفات مثل .bashrc أو .profile.

كيف أضيف مسار جديد إلى PATH في Linux؟

يمكنك استخدام export PATH="$PATH:/new/path" مؤقتا، ثم إضافته إلى .bashrc لجعله دائما.

الخطوة التالية

في الدرس القادم سنتعلم الوقت والمزامنة في Linux باستخدام timedatectl وNTP.

التالي: الوقت وNTP
المحرر الذكي

اكتب الكود وشاهد النتيجة فوراً

جرب الآن مجاناً
قناة ديف عربي

تابع أحدث الدروس والتحديثات مباشرة على واتساب

انضم الآن