బాష్‌లో PATH ఎలా పని చేస్తుంది

How Does Path Work Bash



మీరు లైనక్స్ టెర్మినల్‌లో ఆదేశాన్ని టైప్ చేస్తున్నప్పుడు, మీరు సాధారణంగా ఒక నిర్దిష్ట ఉద్యోగం చేయడానికి ప్రోగ్రామ్‌కు కాల్ చేస్తున్నారు, ఉదాహరణకు, ls , CD , rm , mkdir , మొదలైనవి ఈ ప్రోగ్రామ్‌లన్నీ ఫైల్ సిస్టమ్‌లో ఎక్కడో ఉన్నాయి, సరియైనదా? ఈ కార్యక్రమాలు ఎక్కడ ఉన్నాయో బాష్‌కు ఎలా తెలుస్తుంది?

ఇక్కడ పర్యావరణ వేరియబుల్స్ ఆటలోకి వస్తాయి, ముఖ్యంగా PATH వేరియబుల్. బాష్ ఆ ప్రోగ్రామ్‌ల కోసం ఎక్కడ చూడాలో చెప్పడానికి ఈ వేరియబుల్ బాధ్యత వహిస్తుంది. PATH ఎలా పనిచేస్తుందో మరియు PATH ని ఎలా వీక్షించాలో/సవరించాలో చూద్దాం.







పర్యావరణ వేరియబుల్ మరియు $ PATH

షెల్ పరిభాషలో, పర్యావరణం అనేది సెషన్ ప్రారంభించిన ప్రతిసారీ షెల్ నిర్మించే ప్రాంతం. పర్యావరణాన్ని నిర్వహించడానికి, పర్యావరణంలోని వివిధ భాగాలను సూచించే పర్యావరణ వేరియబుల్స్ ఉన్నాయి. వేరియబుల్ విలువ స్ట్రింగ్, డైరెక్టరీ స్థానం, విలువ లేదా ఇతరులు కావచ్చు.



PATH అనేది కొన్ని డైరెక్టరీలను ట్రాక్ చేసే పర్యావరణ వేరియబుల్. అప్రమేయంగా, PATH వేరియబుల్ కింది స్థానాలను కలిగి ఉంటుంది.



  • /usr/బిన్
  • /usr/sbin
  • /usr/స్థానిక/బిన్
  • /usr/స్థానిక/sbin
  • /ఉదయం
  • /sbin
  • /స్నాప్/బిన్ (స్నాప్ ఇన్‌స్టాల్ చేయబడితే)

ప్రస్తుతం PATH కింద ఏ డైరెక్టరీలు నమోదు చేయబడ్డాయో చూడాలనుకుంటున్నారా? టెర్మినల్‌ని కాల్చి, కింది ఆదేశాన్ని అమలు చేయండి.





$బయటకు విసిరారు $ PATH

ఇక్కడ, $ గుర్తు అనేది వేరియబుల్‌ను సూచించడం. ది బయటకు విసిరారు కమాండ్ PATH వేరియబుల్ విలువను ప్రింట్ చేస్తుంది.



ఇప్పుడు, ఈ నిర్దిష్ట పర్యావరణ వేరియబుల్ ఎందుకు ముఖ్యమైనది? ఎందుకంటే షెల్ మరియు సిస్టమ్ మొత్తం దానిని ఎలా పరిగణిస్తుంది. PATH వేరియబుల్ స్టోర్‌లు అమలు చేయదగినవి కనుగొనవచ్చు. ఏదైనా కమాండ్ అమలు చేయబడినప్పుడు, షెల్ లక్ష్య ఎక్జిక్యూటబుల్ ఫైల్ కోసం PATH డైరెక్టరీలను చూస్తుంది మరియు దానిని అమలు చేస్తుంది.

ఉదాహరణకు, తో పరీక్షిద్దాం బయటకు విసిరారు కమాండ్ ఇక్కడ, నేను ప్రతిధ్వని ఆదేశాన్ని అమలు చేస్తున్నాను.

$బయటకు విసిరారుహలో వరల్డ్!

ఎగ్జిక్యూటబుల్ ఫైల్ ఎక్కడ ఉంది బయటకు విసిరారు ? తెలుసుకోవడానికి తదుపరి ఆదేశాన్ని అమలు చేయండి.

$ఇది బయటకు విసిరారు

మనం చూడగలిగినట్లుగా, ది బయటకు విసిరారు ఎక్జిక్యూటబుల్/usr/bin/echo వద్ద ఉంది. ఏది ఎక్కడ ఉంది? తెలుసుకుందాం.

$ఇది ఇది

ఇది/usr/bin/లో కూడా ఉంది. చాలా కమాండ్ టూల్స్ /usr /bin డైరెక్టరీ కింద ఉన్నాయి. ఇక్కడ, కమాండ్ యొక్క ఎగ్జిక్యూటబుల్ (ల) కోసం శోధించడానికి స్థానాల కోసం బాష్ PATH ని సంప్రదిస్తున్నారు.

PATH ని సవరించడం

మేము PATH విలువను సవరించే ముందు, దాని నిర్మాణాన్ని అర్థం చేసుకోవడం ముఖ్యం. PATH విలువను తనిఖీ చేయడానికి ఆదేశాన్ని మళ్లీ అమలు చేయండి.

$బయటకు విసిరారు $ PATH

ప్రతి డైరెక్టరీలు a: గుర్తుతో వేరు చేయబడ్డాయని గమనించండి.

PATH కి డైరెక్టరీని జోడిస్తోంది

PATH కి అనుకూల డైరెక్టరీని జోడించడానికి, మేము bashrc ఫైల్ సహాయాన్ని తీసుకుంటాము. ఇది కొత్త బాష్ సెషన్ ప్రారంభమైన ప్రతిసారి బాష్ లోడ్ అయ్యే ప్రత్యేక బాష్ స్క్రిప్ట్. Bashrc ఫైల్ Linux సిస్టమ్‌లోని ప్రతి ఒక్క వినియోగదారుకు ప్రత్యేకంగా ఉంటుందని గమనించండి.

టెక్స్ట్ ఎడిటర్‌లో bashrc ఫైల్‌ని తెరవండి. బషర్క్ ఫైల్ ఇప్పటికే లేనట్లయితే, ఎడిటర్ దానిని స్వయంచాలకంగా సృష్టిస్తుంది.

$నేను వచ్చాను/.bashrc

ఇక్కడ, ఇది ఉబుంటుతో వచ్చే డిఫాల్ట్ బషర్క్. ఫైల్ చివరికి వెళ్లండి (అది ఉంటే) మరియు కింది పంక్తిని జోడించండి.

$ఎగుమతి PATH='$ PATH: / '

ఇక్కడ, PATH వేరియబుల్ యొక్క కొత్త విలువ పాత వేరియబుల్‌తో పాటు మనం జోడించిన కొత్త డైరెక్టరీతో ఉంటుంది.

ఫైల్‌ను సేవ్ చేసి, రీలోడ్ చేయమని బాష్‌కి చెప్పండి.

$మూలం/.bashrc

కొత్త మార్గం విజయవంతంగా జోడించబడిందో లేదో ధృవీకరిద్దాం.

$బయటకు విసిరారు $ PATH

వోయిలా! PATH విజయవంతంగా నవీకరించబడింది! ఇప్పుడు, బాష్ ఎగ్జిక్యూటబుల్ (ల) కోసం కొత్త మార్గాన్ని కూడా శోధిస్తుంది. నా దగ్గర ఇప్పటికే స్క్రిప్ట్ ఉంది demo.sh డెస్క్‌టాప్‌లో. ఖచ్చితమైన స్థానాన్ని పేర్కొనకుండా బాష్ కాల్ చేయగలదా అని చూద్దాం.

$demo.sh

అవును, బాష్ నేరుగా ఎలాంటి సమస్య లేకుండా కాల్ చేయవచ్చు.

PATH నుండి డైరెక్టరీని తీసివేస్తోంది

PATH నుండి డైరెక్టరీలను జోడించడానికి/తీసివేయడానికి సూటిగా మార్గం లేదు. నన్ను వివిరించనివ్వండి.

PATH విలువ వాస్తవానికి స్థిరంగా ఉంటుంది. అప్పుడు, బషర్క్ ట్రిక్ గురించి ఏమిటి? Bashrc అనేది బాష్ స్క్రిప్ట్, ఇది సెషన్ ప్రారంభించిన ప్రతిసారీ బాష్ లోడ్ అవుతుంది. Bashrc లో, మేము PATH యొక్క కొత్త విలువ దాని డిఫాల్ట్ విలువ మరియు వినియోగదారు నిర్వచించిన డైరెక్టరీ అని ప్రకటించాము. ఇప్పుడు, ప్రతిసారి బాష్ లోడ్ అవుతున్నప్పుడు, బాష్‌ఆర్‌సి PATH యొక్క కొత్త విలువను కేటాయించాలని చెబుతున్నట్లు చూస్తుంది మరియు అది అదే చేస్తుంది.

అదేవిధంగా, మేము PATH నుండి డైరెక్టరీని తీసివేయాలనుకుంటే, మేము bashrc లో PATH యొక్క విభిన్న విలువను తిరిగి కేటాయించాలి, తద్వారా ప్రతిసారి బాష్ ప్రారంభించినప్పుడు, అది సవరించిన విలువను ఉపయోగిస్తుంది.

ఈ ఉదాహరణను చూద్దాం. నేను PATH నుండి డైరెక్టరీ ~/డెస్క్‌టాప్‌ను తీసివేయడానికి సిద్ధంగా ఉన్నాను.

$బయటకు విసిరారు $ PATH | సెడ్ -మరియు 's/: ~ /డెస్క్‌టాప్ $ //'

డైరెక్టరీ/హోమ్/తప్పు/dir అయితే, కమాండ్ ఇలా కనిపిస్తుంది.

$బయటకు విసిరారు $ PATH | సెడ్ -మరియు 's/: /హోమ్ /తప్పు /dir $ //'

ఇక్కడ, ఆసక్తికరమైన భాగం సెడ్ టూల్. సెడ్ గురించి మరింత తెలుసుకోండి ఇక్కడ మరియు ఇక్కడ . సుదీర్ఘ కథ, సెడ్ ఉపయోగించి, మేము అవుట్‌పుట్‌ను సవరించాము బయటకు విసిరారు కమాండ్ ఇప్పుడు, మేము PATH విలువను మార్చడానికి ఈ సవరించిన అవుట్‌పుట్‌ను ఉపయోగించవచ్చు.

టెక్స్ట్ ఎడిటర్‌లో bashrc ని తెరిచి, కింది పంక్తులను జోడించండి. నేను పని చేస్తున్నట్లు నిరూపించడానికి ఉద్దేశపూర్వకంగా మునుపటి పంక్తులను ఉంచుతున్నాను.

$ఎగుమతి PATH='$ (echo $ PATH | sed -e 's/: ~ /డెస్క్‌టాప్ $ //')'

ప్రత్యామ్నాయంగా, మీరు PATH విలువను మాన్యువల్‌గా సెట్ చేయవచ్చు. ఇది శ్రమించే ప్రక్రియ కానీ మరింత సూటిగా మరియు సరళంగా ఉంటుంది.

$ఎగుమతి PATH=/usr/స్థానిక/sbin:/usr/స్థానిక/నేను:/usr/sbin:/usr/నేను:/sbin:/నేను:
/usr/ఆటలు:/usr/స్థానిక/ఆటలు:/స్నాప్/am

ఇక్కడ, కమాండ్ విలువ PATH కి కేటాయించబడుతుంది. ఫైల్‌ను సేవ్ చేయండి మరియు bashrc ని మళ్లీ లోడ్ చేయండి.

$మూలం/.bashrc

ఫలితాన్ని ధృవీకరిద్దాం.

$బయటకు విసిరారు $ PATH

PATH విలువ నవీకరించబడింది!

తుది ఆలోచనలు

బాష్‌లో, PATH వేరియబుల్ ముఖ్యమైనది. బాష్ సెషన్ ద్వారా నడుస్తున్న ఏదైనా ప్రోగ్రామ్ వేరియబుల్‌ను వారసత్వంగా పొందుతుంది, కాబట్టి PATH అవసరమైన డైరెక్టరీలను మాత్రమే కలిగి ఉండటం ముఖ్యం. మరింత డైరెక్టరీని జోడించడం వల్ల సిస్టమ్‌కు రిడెండెన్సీ మాత్రమే జోడించబడుతుంది.

బాష్ కోసం అన్ని పర్యావరణ వేరియబుల్స్ చూడటానికి, ఈ ఆదేశాన్ని అమలు చేయండి. మొదటి కమాండ్ భాగం అన్ని ఎన్విరాన్‌మెంట్ వేరియబుల్స్‌ను అందిస్తుంది మరియు రెండవ భాగం అవుట్‌పుట్‌ను ఆరోహణ క్రమంలో క్రమం చేస్తుంది.

$ఎన్వి | క్రమబద్ధీకరించు

మీ బాష్ అనుభవాన్ని మెరుగుపరచాలనుకుంటున్నారా? బాష్ మారుపేర్లు విషయాలను వేగవంతం చేయడానికి మరియు మసాలా చేయడానికి ప్రత్యేకమైన మార్గాన్ని అందిస్తాయి. బాష్ మారుపేర్ల గురించి మరింత తెలుసుకోండి .

ఆనందించండి!