ماهو PATH وكيف يستخدم في لينُكس؟

في هذا المقال إن شاء الله سنتعلم عن PATH وكيفيه استخدمه في لينكس .

عموما معظم البرامج التي تعمل في بيئة لينكس تعمل بشكل سلس ولا تحتاج أن تحدد لها المسار الخاص بها لتعمل
لكن أحيانا ربما تحتاج إلى تحديد مسار برنامجك يدويا خاصة إذا كان سكربت وإيضا بعض البرامج التي تعمل خارج المستودعات الرسمية.

كذالك ستحتاج إلى تحديد مسار البرنامج إذا كان البرنامج او السكربت يعمل من مسار غير غير معتاد مثل المسارات bin او usr/bin بل هي مسارات أخرى غير معيارية كأن يكون في home مثلا.

نأتي الان الى السؤال المهم

ماهو Path Environment Variable؟
ممكن أن نقول عنه انه البيئة التي تستخدم لتعريف مسارات تشغيل التطبيقات
وتحتوي علي قائمة بمسارات البرامج

PATH :
هو متغير يخبر shell عن المسار الذي ينبغي البحث فيه عن الملفات التنفيذيه .

نأتي إلى أهم جزء في المقال وهو :

كيفيه إضافة مسار الى PATH

لمعرفة المسارات الموجودة في PATH.
echo $PATH

الناتج سيكون مسارات مفصولة ب “:” حيث أن مايأتي وراء هذا الرمز يتم إضافته الى المسار الحالي.

export PATH=$PATH:/srv/scripts

يقوم shell بالبحث في المسارات التالية للملفات التنفيذية:

/usr/local/sbin
/usr/local/bin
/usr/sbin
/usr/bin
/sbin
/bin
/usr/games
/usr/local/games
/snap/bin
/home/linuxiac/.dotnet/tools

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

إضافة مسار الى PATH بشكل مؤقت

لنفترض أنك عملت سكربت في المسار
/srv/scripts

إذا أردت إضافة هذا المشار الى PATH
export PATH=$PATH:/srv/scripts

لنرى محتويات PATH
echo $PATH

إذا أردت أن تجعل الأولوية للبحث لهذا المسار
export PATH=/srv/scripts:$PATH

ملاحظة هامة
هذه المسارات التي اضفتها بالطريقة السابقة هي مؤقته و ستختفي بمجرد تسجيل خروج او الخروج من shell لانه يحفظ مؤقتا في الجلسة الخاصة ب shell

كيف يمكن جعل هذا التغيير مستمر ؟

ذالك يتم بإضافة مسار ثابت الى PATH الى .bashrc نفتح الملف بمحرر نانو

nano ~/.bashrc

نضيف السطر التالي الى نهاية الملف
export PATH=$PATH:/srv/scripts

الخطوة الاخيرة هي حفظ الملف وعمل load لPATH الجديد الى الجلسة الحالية الخاصة ب shell

source ~/.bashrc

يمكنك الان مشاهدة المسار الجديد الذي تم إضافته الى PATH
echo $PATH

في أمان الله :slight_smile:
المصادر

هذا الموضوع فائز بجائزة أسس للكتابة

هذا الموضوع فائز بجائزة أسس للكتابة وهي اول جائزة عربية مخصصة للكتابة عن البرمجيات الحرة والمفتوحة.

الموضوع متوفر على مدونة gnulinuxsa هنا:

4 إعجابات

موضوع جميل جدا.

إعجاب واحد (1)

شكرا على المجاملة اخي فارس موضوعاتك أنت هي الأجمل والأرقي والأكمل :slight_smile:

إعجاب واحد (1)