ما هو 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:

المصادر

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

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

المواضيع الفائزة لشهر مارس 2022

Fatehi
Website | + مقالات

كاتب فائز بجائزة أسس للكتابة

Aosus

عن Fatehi

كاتب فائز بجائزة أسس للكتابة