لینکس میں اپنے $PATH میں ڈائرکٹری کیسے شامل کریں۔

فاطموتی احمد زینوری/شٹر اسٹاک



|_+_| آپ کے لینکس کمپیوٹر کے پس منظر میں خاموش ہیرا پھیری کرنے والوں میں سے ایک ہے۔ یہ خاموشی سے آپ کے صارف کے تجربے کو متاثر کرتا ہے، لیکن اس میں کچھ بھی مشکوک نہیں ہے۔ ہم اس کی وضاحت کریں گے کہ یہ کیا کرتا ہے، اور آپ اسے کیسے ایڈجسٹ کر سکتے ہیں۔

لینکس پر $PATH کیا ہے، اور یہ کیسے کام کرتا ہے؟

جب آپ ٹرمینل ونڈو میں کمانڈ ٹائپ کرتے ہیں اور Enter دباتے ہیں، تو آپ اپنی کمانڈ پر عمل درآمد سے پہلے کافی سرگرمیاں شروع کر دیتے ہیں۔





باش زیادہ تر لینکس کی تقسیم پر پہلے سے طے شدہ شیل ہے۔ یہ آپ کے درج کردہ متن کی لائن کی ترجمانی کرتا ہے اور پیرامیٹرز کے ساتھ مل کر کمانڈ کے ناموں کی شناخت کرتا ہے، پائپ , ری ڈائریکشنز ، اور جو کچھ بھی ہے وہاں۔ اس کے بعد یہ ان کمانڈز کے لیے قابل عمل بائنریز کا پتہ لگاتا ہے اور انہیں آپ کے فراہم کردہ پیرامیٹرز کے ساتھ لانچ کرتا ہے۔

ایگزیکیوٹیبل کو تلاش کرنے کے لیے شیل جو پہلا قدم اٹھاتا ہے وہ یہ شناخت کر رہا ہے کہ آیا بائنری بھی شامل ہے۔ اگر آپ جو کمانڈ استعمال کرتے ہیں وہ شیل کے اندر ہے (a شیل بلٹ ان مزید تلاش کی ضرورت نہیں ہے۔



شیل بلٹ ان کو تلاش کرنا سب سے آسان ہے کیونکہ وہ شیل کے لیے لازم و ملزوم ہیں۔ یہ انہیں ٹول بیلٹ میں رکھنے جیسا ہے — وہ ہمیشہ آپ کے ساتھ ہوتے ہیں۔

اشتہار

اگر آپ کو اپنے دوسرے ٹولز میں سے کسی ایک کی ضرورت ہے، تاہم، آپ کو اسے ڈھونڈنے کے لیے ورکشاپ میں جانا پڑے گا۔ کیا یہ آپ کے ورک بینچ پر ہے یا دیوار کے ہینگر پر؟ یہ وہی ہے جو |_+_| ماحولیاتی متغیر کرتا ہے۔ اس میں ان جگہوں کی فہرست ہے جو شیل کی تلاش کرتا ہے اور جس ترتیب میں انہیں تلاش کیا جائے گا۔

اگر آپ یہ دیکھنا چاہتے ہیں کہ آیا ایک حکم ہے a شیل بلٹ ان، ایک عرف، ایک فنکشن، یا اسٹینڈ اسٹون بائنری ایم وی /work/unfile ، آپ |_+_| استعمال کر سکتے ہیں۔ کمانڈ جیسا کہ ذیل میں دکھایا گیا ہے:



|_ + _ | |_ + _ |

یہ ہمیں بتاتا ہے کہ |_+_| ایک بائنری فائل ہے، اور راستے میں پائی جانے والی پہلی فائل |_+_| پر واقع ہے۔ آپ کے پاس |_+_| کے ایک سے زیادہ ورژن ہو سکتے ہیں۔ آپ کے کمپیوٹر پر انسٹال ہے، لیکن یہ وہی ہے جسے شیل استعمال کرنے کی کوشش کرے گا۔

حیرت کی بات نہیں، |_+_| ایک شیل بلٹ ان ہے۔

آپ کے $PATH کی فہرست بنانا

یہ دیکھنا آسان ہے کہ آپ کے راستے میں کیا ہے۔ |_+_| استعمال کرنے کے لیے بس درج ذیل کو ٹائپ کریں۔ کمانڈ اور قیمت پرنٹ کریں۔ میں منعقد ہوا |_+_| متغیر:

|_ + _ |

آؤٹ پٹ بڑی آنت کی ایک فہرست ہے شیل راستے سے بائیں سے دائیں تلاش کرتا ہے، آپ کے کمانڈ کو انجام دینے کے لیے ایک مماثل قابل عمل کے لیے فائل سسٹم کے ہر مقام کی جانچ کرتا ہے۔

ہم فائل سسٹم کے ان مقامات کو دیکھنے کے لیے فہرست کے ذریعے اپنا راستہ منتخب کر سکتے ہیں جن کی تلاش کی جائے گی، اور جس ترتیب سے انہیں تلاش کیا جائے گا:

  • |_ + _ |
  • |_ + _ |
  • |_ + _ |
  • |_ + _ |
  • |_ + _ |
  • |_ + _ |
  • |_ + _ |
  • |_ + _ |
  • |_ + _ |
اشتہار

کچھ جو فوری طور پر واضح نہیں ہوسکتا ہے وہ یہ ہے کہ تلاش موجودہ ورکنگ ڈائرکٹری میں شروع نہیں ہوتی ہے۔ بلکہ، یہ درج شدہ ڈائریکٹریز، اور صرف درج ڈائریکٹریز کے ذریعے اپنا کام کرتا ہے۔

اگر موجودہ ورکنگ ڈائرکٹری آپ کے راستے میں نہیں ہے، تو اسے تلاش نہیں کیا جائے گا۔ اس کے علاوہ، اگر آپ کے پاس ڈائریکٹریز میں محفوظ کردہ کمانڈز ہیں جو راستے میں نہیں ہیں، تو شیل انہیں نہیں پائے گا۔

اس کو ظاہر کرنے کے لیے، ہم نے ایک چھوٹا سا پروگرام بنایا جس کا نام ہے |_+_| جب پھانسی دی جاتی ہے، |_+_| اس ڈائریکٹری کا نام پرنٹ کرتا ہے جہاں سے اسے ٹرمینل ونڈو میں لانچ کیا گیا تھا۔ یہ |_+_| میں واقع ہے۔ ہمارے پاس |_+_| میں ایک نیا ورژن بھی ہے۔ ڈائریکٹری

ہم درج ذیل ٹائپ کرتے ہیں |_+_| کمانڈ ہمیں یہ دکھانے کے لیے کہ ہمارے پروگرام کا کون سا ورژن ہے۔ شیل تلاش کرے گا اور استعمال کرے گا:

|_ + _ |

شیل اس ورژن کی اطلاع دیتا ہے جو اسے ملا ہے وہ ڈائرکٹری میں ہے جو راستے میں ہے۔

ہم اسے ختم کرنے کے لیے درج ذیل ٹائپ کرتے ہیں:

|_ + _ |

|_+_| کا ورژن 1.0 چلتا ہے اور اس بات کی تصدیق کرتا ہے کہ ہماری توقعات درست تھیں۔ پایا جانے والا ورژن |_+_| میں واقع ہے۔

اشتہار

|_+_| کا کوئی دوسرا ورژن چلانے کے لیے اس کمپیوٹر پر، ہمیں کمانڈ لائن پر ایگزیکیوٹیبل کا راستہ استعمال کرنا پڑے گا، جیسا کہ ذیل میں دکھایا گیا ہے:

|_ + _ |

اب جب کہ ہم نے شیل کو بتایا ہے کہ |_+_| کا ورژن کہاں تلاش کرنا ہے۔ ہم چلانا چاہتے ہیں، یہ ورژن 1.1 استعمال کرتا ہے۔ اگر ہم اس ورژن کو ترجیح دیتے ہیں، تو ہم اسے |_+_| میں کاپی کر سکتے ہیں۔ ڈائریکٹری اور پرانی کو اوور رائٹ کریں۔

ہم کہتے ہیں کہ ہم |_+_| کا ایک نیا ورژن تیار کر رہے ہیں۔ جب ہم اسے تیار کرتے اور جانچتے ہیں تو ہمیں اسے کثرت سے چلانے کی ضرورت ہوگی، لیکن ہم لائیو ماحول میں غیر ریلیز شدہ ڈیولپمنٹ کی نقل نہیں کرنا چاہتے۔

یا، شاید ہم نے |_+_| کا نیا ورژن ڈاؤن لوڈ کیا ہے۔ اور ہم اسے عوامی طور پر دستیاب کرنے سے پہلے اس پر کچھ تصدیقی جانچ کرنا چاہتے ہیں۔

اگر ہم اپنی ورک ڈائرکٹری کو راستے میں شامل کرتے ہیں، تو ہم شیل کو اپنا ورژن تلاش کرتے ہیں۔ اور یہ تبدیلی صرف ہم پر اثرانداز ہوگی — دوسرے اب بھی |_+_| کا ورژن استعمال کریں گے۔ میں |_+_| .

اپنے $PATH میں ایک ڈائرکٹری شامل کرنا

آپ |_+_| استعمال کر سکتے ہیں۔ کو حکم دیں ایک ڈائریکٹری شامل کریں کو |_+_| پھر ڈائریکٹری کو فائل سسٹم کے مقامات کی فہرست میں شامل کیا جاتا ہے جہاں شیل تلاش کرتا ہے۔ جب شیل کو مماثل قابل عمل مل جاتا ہے، تو یہ تلاش کرنا بند کر دیتا ہے، لہذا آپ اس بات کو یقینی بنانا چاہتے ہیں کہ یہ آپ کی ڈائرکٹری کو پہلے |_+_| سے پہلے تلاش کرے۔

اشتہار

یہ کرنا آسان ہے۔ ہماری مثال کے طور پر، ہم اپنی ڈائرکٹری کو راستے کے آغاز میں شامل کرنے کے لیے درج ذیل کو ٹائپ کرتے ہیں تاکہ یہ پہلی جگہ تلاش کی جائے:

|_ + _ |

یہ کمانڈ سیٹ کرتا ہے |_+_| اس ڈائریکٹری کے برابر ہونے کے لیے جو ہم شامل کر رہے ہیں، |_+_|، اور پھر پورا موجودہ راستہ۔

پہلا |_+_| کوئی ڈالر کا نشان نہیں ہے (|_+_|)۔ ہم نے |_+_| کے لیے قدر مقرر کی ہے۔ فائنل |_+_| ایک ڈالر کا نشان ہے کیونکہ ہم |_+_| میں ذخیرہ شدہ مواد کا حوالہ دے رہے ہیں۔ متغیر نیز، نئی ڈائرکٹری اور |_+_| کے درمیان بڑی آنت (|_+_|) کو بھی نوٹ کریں۔ متغیر نام.

آئیے دیکھتے ہیں کہ اب راستہ کیسا لگتا ہے:

|_ + _ |

ہمارے |_+_| ڈائریکٹری کو راستے کے آغاز میں شامل کیا جاتا ہے۔ ہماری فراہم کردہ بڑی آنت اسے باقی راستے سے الگ کرتی ہے۔

ہم |_+_| کے اپنے ورژن کی تصدیق کے لیے درج ذیل کو ٹائپ کرتے ہیں۔ پہلا ملا ہے:

|_ + _ |

پڈنگ میں ثبوت چل رہا ہے |_+_|، جیسا کہ ذیل میں دکھایا گیا ہے:

|_ + _ |

شیل ورژن 1.1 کو تلاش کرتا ہے اور اسے |_+_| سے انجام دیتا ہے۔

اشتہار

اپنی ڈائرکٹری کو راستے کے آخر میں شامل کرنے کے لیے، ہم اسے صرف کمانڈ کے آخر میں منتقل کرتے ہیں، جیسے:

|_ + _ |

تبدیلیوں کو مستقل بنانا

جیسا کہ بیتھ بروک-مارسینیک کہا، کامیابی ٹھیک ہے، لیکن کامیابی قلیل ہے۔ جس لمحے آپ ٹرمینل ونڈو کو بند کرتے ہیں، آپ نے |_+_| میں کوئی بھی تبدیلی کی ہے۔ چلے گئے ہیں. انہیں مستقل بنانے کے لیے، آپ کو اپنا |_+_| ڈالنا ہوگا۔ ترتیب فائل میں کمانڈ۔

جب آپ |_+_| ڈالتے ہیں۔ آپ کے |_+_| میں کمانڈ فائل میں، ہر بار جب آپ ٹرمینل ونڈو کھولتے ہیں تو یہ راستہ طے کرتا ہے۔ کے برعکس |_+_| سیشنز جس کے لیے آپ کو لاگ اِن کرنا پڑتا ہے، یہ انٹرایکٹو سیشن کہلاتے ہیں۔

ماضی میں، آپ |_+_| ڈالیں گے۔ آپ کے |_+_| میں کمانڈ فائل میں لاگ ان ٹرمینل سیشنز کے لیے راستہ طے کرنا ہے۔

تاہم، ہم نے پایا کہ اگر ہم |_+_| ڈالتے ہیں۔ یا تو |_+_| میں کمانڈ یا |_+_| فائلوں میں، یہ انٹرایکٹو اور لاگ ان ٹرمینل سیشن دونوں کے لیے صحیح طریقے سے راستہ طے کرتا ہے۔ آپ کا تجربہ مختلف ہو سکتا ہے۔ تمام واقعات کو سنبھالنے کے لیے، ہم آپ کو دکھائیں گے کہ اسے دونوں فائلوں میں کیسے کرنا ہے۔

اپنے |_+_| میں درج ذیل کمانڈ کا استعمال کریں۔ |_+_| میں ترمیم کرنے کے لیے ڈائریکٹری فائل:

|_ + _ |

دی |_ + _ | ایڈیٹر |_+_| کے ساتھ کھلتا ہے۔ فائل بھری ہوئی

کے ساتھ gedit ایڈیٹر

اشتہار

فائل کے نیچے سکرول کریں، اور پھر درج ذیل ایکسپورٹ کمانڈ شامل کریں جو ہم نے پہلے استعمال کیا تھا۔

|_ + _ |

فائل کو محفوظ کریں۔ اگلا، یا تو ٹرمینل ونڈو کو بند کریں اور دوبارہ کھولیں یا |_+_| استعمال کریں۔ |_+_| کو پڑھنے کا حکم فائل، مندرجہ ذیل کے طور پر:

|_ + _ |

پھر، درج ذیل |_+_| ٹائپ کریں۔ راستہ چیک کرنے کا حکم:

|_ + _ |

یہ |_+_| کا اضافہ کرتا ہے۔ راستے کے آغاز تک ڈائریکٹری۔

کمانڈ کو |_+_| میں شامل کرنے کا عمل فائل ایک ہی ہے. درج ذیل کمانڈ کو ٹائپ کریں:

|_ + _ |

|_+_| ایڈیٹر |_+_| کے ساتھ لانچ ہوتا ہے۔ فائل بھری ہوئی

کے ساتھ gedit ایڈیٹر

|_+_| شامل کریں۔ فائل کے نیچے کمانڈ، اور پھر اسے محفوظ کریں۔ نئی ٹرمینل ونڈو کو بند کرنا اور کھولنا |_+_| کو مجبور کرنے کے لیے ناکافی ہے۔ فائل کو دوبارہ پڑھنا ہے۔ نئی ترتیبات کے اثر میں آنے کے لیے، آپ کو لاگ آؤٹ اور واپس آنا ہوگا یا |_+_| استعمال کرنا ہوگا۔ کمانڈ جیسا کہ ذیل میں دکھایا گیا ہے:

|_ + _ |

متعلقہ: gedit کے ساتھ لینکس پر ٹیکسٹ فائلوں کو گرافک طریقے سے کیسے ایڈٹ کریں۔

سب کے لیے راستہ طے کرنا

سسٹم کو استعمال کرنے والے ہر فرد کے لیے راستہ طے کرنے کے لیے، آپ |_+_| میں ترمیم کر سکتے ہیں۔ فائل

آپ کو استعمال کرنے کی ضرورت ہوگی |_+_|، مندرجہ ذیل کے طور پر:

|_ + _ |اشتہار

جب |_+_| ایڈیٹر لانچ ہوتا ہے، فائل کے نیچے ایکسپورٹ کمانڈ شامل کریں۔

کے ساتھ gedit ایڈیٹر

فائل کو محفوظ کریں اور بند کریں۔ دوسروں کے اگلی بار لاگ ان ہونے پر تبدیلیاں ان پر اثر انداز ہوں گی۔

سیکیورٹی پر ایک نوٹ

اس بات کو یقینی بنائیں کہ آپ غلطی سے کوئی معروف بڑی آنت |_+_| شامل نہ کریں۔ راستے پر، جیسا کہ ذیل میں دکھایا گیا ہے۔

اگر آپ ایسا کرتے ہیں، تو یہ پہلے موجودہ ڈائرکٹری کو تلاش کرے گا، جس سے سیکیورٹی رسک متعارف ہوتا ہے۔ کہتے ہیں کہ آپ نے ایک آرکائیو فائل ڈاؤن لوڈ کی ہے اور اسے ڈائرکٹری میں ان زپ کر دیا ہے۔ آپ فائلوں کو دیکھیں اور ایک اور زپ فائل دیکھیں۔ آپ اس آرکائیو کو نکالنے کے لیے ایک بار پھر ان زپ کو کال کریں۔

اگر پہلے آرکائیو میں ایک قابل عمل فائل ہے جسے |_+_| کہا جاتا ہے۔ یہ ایک بدنیتی پر مبنی عمل تھا، آپ غلطی سے اس کو اصلی کی بجائے برطرف کر دیں گے |_+_| قابل عمل ایسا اس لیے ہوگا کیونکہ شیل پہلے موجودہ ڈائرکٹری میں نظر آئے گا۔

لہذا، جب آپ اپنا |_+_| ٹائپ کرتے ہیں تو ہمیشہ محتاط رہیں احکامات استعمال کریں |_+_| $PATH ان کا جائزہ لیں اور یہ یقینی بنائیں کہ وہ ویسے ہی ہیں جیسا آپ چاہتے ہیں۔

لینکس کمانڈز
فائلوں ٹار · pv · کیٹ · tac · chmod · گرفت · فرق · sed · کے ساتھ · آدمی · pushd · پاپ ڈی · fsck · ٹیسٹ ڈسک · seq · fd · پانڈوک · سی ڈی · $PATH · awk · شامل ہونا · jq · گنا · uniq · journalctl · دم · حالت · ls · fstab · باہر پھینک دیا · کم · chgrp · chown · rev · دیکھو · تار · قسم · نام تبدیل کریں · زپ · ان زپ · پہاڑ · umount · انسٹال کریں · fdisk · mkfs · rm · rmdir · rsync · ڈی ایف · جی پی جی · ہم · نینو · mkdir · سے · ln · پیچ · تبدیل · rcone · ٹکڑا · ایس آر ایم
عمل عرف · سکرین · سب سے اوپر · اچھا · رینس · ترقی · اسٹریس · نظام · tmux · chsh · تاریخ · پر · بیچ · مفت · کونسا · dmesg · usermod · پی ایس · کروٹ · xargs · tty · گلابی · lsof · vmstat · وقت ختم · دیوار · جی ہاں · مار ڈالو · سونا · sudo · اس کا · وقت · گروپ ایڈ · usermod · گروپس · lshw · بند · دوبارہ شروع کریں · روکو · بجلی بند · پاس ڈبلیو ڈی · lscpu · کرونٹاب · تاریخ · bg · fg
نیٹ ورکنگ netstat · پنگ · ٹریسروٹ · آئی پی · ss · کون ہے · fail2ban · bmon · تم · انگلی · nmap · ایف ٹی پی · curl · wget · ڈبلیو ایچ او · میں کون ہوں · میں · iptables · ssh-keygen · ufw

متعلقہ: ڈویلپرز اور شائقین کے لیے بہترین لینکس لیپ ٹاپ

اگلا پڑھیں ڈیو میکے کی پروفائل تصویر ڈیو میکے
ڈیو میکے نے سب سے پہلے کمپیوٹر کا استعمال اس وقت کیا جب پنچڈ پیپر ٹیپ کا رواج تھا، اور وہ تب سے پروگرامنگ کر رہا ہے۔ آئی ٹی انڈسٹری میں 30 سال سے زیادہ کے بعد، اب وہ کل وقتی ٹیکنالوجی صحافی ہیں۔ اپنے کیریئر کے دوران، اس نے ایک فری لانس پروگرامر، ایک بین الاقوامی سافٹ ویئر ڈویلپمنٹ ٹیم کے مینیجر، ایک IT سروسز پروجیکٹ مینیجر، اور حال ہی میں، ڈیٹا پروٹیکشن آفیسر کے طور پر کام کیا ہے۔ ان کی تحریر howtogeek.com، cloudsavvyit.com، itenterpriser.com، اور opensource.com نے شائع کی ہے۔ ڈیو لینکس کے مبشر اور اوپن سورس کے وکیل ہیں۔
مکمل بائیو پڑھیں

دلچسپ مضامین