பாஷில் PATH எப்படி வேலை செய்கிறது

How Does Path Work Bash



நீங்கள் லினக்ஸ் முனையத்தில் ஒரு கட்டளையைத் தட்டச்சு செய்யும் போது, ​​நீங்கள் பொதுவாக ஒரு குறிப்பிட்ட வேலையைச் செய்ய ஒரு நிரலை அழைக்கிறீர்கள், எடுத்துக்காட்டாக, ls , குறுவட்டு , ஆர்எம் , mkdir , முதலியன இந்த நிரல்கள் அனைத்தும் கோப்பு முறைமையில் எங்காவது அமைந்துள்ளன, இல்லையா? இந்த திட்டங்கள் எங்கே என்று பேஷ் எப்படி அறிவார்?

இங்கே சுற்றுச்சூழல் மாறிகள் விளையாடுகின்றன, குறிப்பாக PATH மாறி. அந்த நிரல்களை எங்கு பார்க்க வேண்டும் என்று பேஷிடம் சொல்வதற்கு இந்த மாறி பொறுப்பாகும். PATH எப்படி வேலை செய்கிறது மற்றும் PATH ஐ எப்படி பார்க்க/மாற்றுவது என்று பார்க்கலாம்.







சுற்றுச்சூழல் மாறி மற்றும் $ PATH

ஷெல் சொற்களில், சுற்றுச்சூழல் என்பது ஒரு அமர்வைத் தொடங்கும் ஒவ்வொரு முறையும் ஷெல் உருவாக்கும் ஒரு பகுதி. சுற்றுச்சூழலை நிர்வகிக்க, சுற்றுச்சூழலின் பல்வேறு பகுதிகளைக் குறிக்கும் சுற்றுச்சூழல் மாறிகள் உள்ளன. மாறியின் மதிப்பு சரம், அடைவு இருப்பிடம், மதிப்பு அல்லது மற்றவையாக இருக்கலாம்.



PATH என்பது சில கோப்பகங்களைக் கண்காணிக்கும் ஒரு சூழல் மாறி ஆகும். இயல்பாக, PATH மாறி பின்வரும் இடங்களைக் கொண்டுள்ளது.



  • /usr/bin
  • /usr/sbin
  • /usr/உள்ளூர்/பின்
  • /usr/உள்ளூர்/sbin
  • /நான்
  • /sbin
  • /ஸ்னாப்/பின் (ஸ்னாப் நிறுவப்பட்டிருந்தால்)

PATH இன் கீழ் தற்போது என்ன கோப்பகங்கள் பதிவு செய்யப்பட்டுள்ளன என்பதைப் பார்க்க வேண்டுமா? ஒரு முனையத்தை எரியுங்கள் மற்றும் பின்வரும் கட்டளையை இயக்கவும்.





$வெளியே எறிந்தார் $ பாத்

இங்கே, $ அடையாளம் என்பது ஒரு மாறியைக் குறிப்பது. தி வெளியே எறிந்தார் கட்டளை PATH மாறியின் மதிப்பை அச்சிடுகிறது.



இப்போது, ​​இந்த குறிப்பிட்ட சூழல் மாறி ஏன் மிகவும் முக்கியமானது? ஏனென்றால் ஷெல் மற்றும் ஒட்டுமொத்த அமைப்பும் அதை எவ்வாறு நடத்துகிறது. இயங்கக்கூடியவை காணக்கூடிய PATH மாறி கடைகள். எந்த கட்டளை இயக்கப்பட்டாலும், ஷெல் இலக்கு இயங்கக்கூடிய கோப்புக்கான PATH கோப்பகங்களைப் பார்த்து அதை இயக்குகிறது.

உதாரணமாக, உடன் சோதிக்கலாம் வெளியே எறிந்தார் கட்டளை இங்கே, நான் ஒரு எதிரொலி கட்டளையை இயக்குகிறேன்.

$வெளியே எறிந்தார்வணக்கம் உலகம்!

இயங்கக்கூடிய கோப்பு எங்கே வெளியே எறிந்தார் ? கண்டுபிடிக்க அடுத்த கட்டளையை இயக்கவும்.

$எந்த வெளியே எறிந்தார்

நாம் பார்க்க முடியும் என, தி வெளியே எறிந்தார் இயங்கக்கூடியது/usr/bin/echo இல் அமைந்துள்ளது. எது எங்கு உள்ளது? நாம் கண்டுபிடிக்கலாம்.

$எந்த எந்த

இது/usr/bin/எந்த இடத்திலும் அமைந்துள்ளது. பெரும்பாலான கட்டளை கருவிகள் /usr /bin கோப்பகத்தின் கீழ் அமைந்துள்ளன. இங்கே, ஒரு கட்டளையின் இயங்கக்கூடிய (களை) தேட இடங்களுக்கு பாஷ் PATH ஐ ஆலோசிக்கிறார்.

PATH ஐ மாற்றுகிறது

PATH இன் மதிப்பை மாற்றுவதற்கு முன், அதன் அமைப்பைப் புரிந்துகொள்வது அவசியம். PATH இன் மதிப்பை சரிபார்க்க கட்டளையை மீண்டும் இயக்கவும்.

$வெளியே எறிந்தார் $ பாத்

ஒவ்வொரு அடைவுகளும் ஒரு: அடையாளத்தால் பிரிக்கப்பட்டிருப்பதைக் கவனியுங்கள்.

PATH க்கு அடைவைச் சேர்க்கிறது

PATH இல் தனிப்பயன் கோப்பகத்தைச் சேர்க்க, நாங்கள் bashrc கோப்பின் உதவியைப் பெறுவோம். ஒவ்வொரு முறையும் ஒரு புதிய பேஷ் அமர்வு தொடங்கும் போது இது ஒரு சிறப்பு பேஷ் ஸ்கிரிப்ட் ஆகும். லினக்ஸ் கணினியில் உள்ள ஒவ்வொரு பயனருக்கும் bashrc கோப்பு தனிப்பட்டது என்பதை நினைவில் கொள்க.

உரை திருத்தியில் bashrc கோப்பைத் திறக்கவும். Bashrc கோப்பு ஏற்கனவே இல்லை என்றால், எடிட்டர் தானாகவே அதை உருவாக்கும்.

$நான் வந்தேன்/.bashrc

இங்கே, இது உபுண்டுவோடு வரும் இயல்புநிலை பாஷர் ஆகும். கோப்பின் கடைசிப் பகுதிக்கு (அது இருந்தால்) சென்று பின்வரும் வரியைச் சேர்க்கவும்.

$ஏற்றுமதி பாத்='$ பாத்: / '

இங்கே, PATH மாறியின் புதிய மதிப்பு பழைய மாறி மற்றும் நாம் சேர்த்த புதிய கோப்பகத்துடன் இருக்கும்.

கோப்பைச் சேமித்து அதை மீண்டும் ஏற்றும்படி பேஷிடம் சொல்லுங்கள்.

$ஆதாரம்/.bashrc

புதிய பாதை வெற்றிகரமாக சேர்க்கப்பட்டதா என்பதை சரிபார்க்கலாம்.

$வெளியே எறிந்தார் $ பாத்

வோய்லா! பாத் வெற்றிகரமாக புதுப்பிக்கப்பட்டது! இப்போது, ​​பாஷ் இயங்கக்கூடிய (களுக்கான) புதிய பாதையையும் தேடும். என்னிடம் ஏற்கனவே ஒரு ஸ்கிரிப்ட் உள்ளது demo.sh டெஸ்க்டாப்பில் சரியான இடத்தைக் குறிப்பிடாமல் பேஷ் அதை அழைக்க முடியுமா என்று பார்ப்போம்.

$demo.sh

ஆமாம், எந்த பிரச்சனையும் இல்லாமல் பேஷ் நேரடியாக அழைக்கலாம்.

PATH இலிருந்து கோப்பகத்தை நீக்குகிறது

PATH இலிருந்து அடைவுகளைச் சேர்க்க/அகற்ற நேரடியான வழி இல்லை. நான் விளக்குகிறேன்.

PATH இன் மதிப்பு உண்மையில் நிலையானது. பிறகு, பாஷ்ரிக் தந்திரம் பற்றி என்ன? Bashrc என்பது ஒரு பாஷ் ஸ்கிரிப்ட் ஆகும், இது ஒரு அமர்வைத் தொடங்கும் ஒவ்வொரு முறையும் பேஷ் ஏற்றுகிறது. Bashrc இல், PATH இன் புதிய மதிப்பு அதன் இயல்புநிலை மதிப்பு மற்றும் பயனர் வரையறுக்கப்பட்ட கோப்பகம் என்று நாங்கள் அறிவித்தோம். இப்போது, ​​ஒவ்வொரு முறையும் பேஷ் ஏற்றும் போது, ​​பாஷ்ர்க் புதிய பாத் மதிப்பை ஒதுக்கச் சொல்வதை அது பார்க்கிறது, அது என்ன செய்கிறது.

இதேபோல், நாம் PATH இலிருந்து ஒரு கோப்பகத்தை அகற்ற விரும்பினால், ஒவ்வொரு முறையும் பேஷ் தொடங்கும் போது, ​​அது மாற்றியமைக்கப்பட்ட மதிப்பைப் பயன்படுத்தும் வகையில், bashrc இல் PATH இன் வேறுபட்ட மதிப்பை நாம் மீண்டும் ஒதுக்க வேண்டும்.

இந்த உதாரணத்தைப் பார்ப்போம். PATH இலிருந்து அடைவு ~/டெஸ்க்டாப்பை அகற்ற நான் தயாராக இருக்கிறேன்.

$வெளியே எறிந்தார் $ பாத் | செட் மற்றும் மற்றும் 's/: ~ /டெஸ்க்டாப் $ //'

அடைவு/வீடு/தவறு/dir ஆக இருந்தால், கட்டளை இப்படி இருக்கும்.

$வெளியே எறிந்தார் $ பாத் | செட் மற்றும் மற்றும் 's/: /வீடு /தவறு /dir $ //'

இங்கே, சுவாரஸ்யமான பகுதி செட் கருவி. செட் பற்றி மேலும் அறியவும் இங்கே மற்றும் இங்கே . நீண்ட கதை சிறியது, செட்டைப் பயன்படுத்தி, இதன் வெளியீட்டை மாற்றியமைக்கிறோம் வெளியே எறிந்தார் கட்டளை இப்போது, ​​PATH இன் மதிப்பை மாற்ற இந்த மாற்றியமைக்கப்பட்ட வெளியீட்டை நாம் பயன்படுத்தலாம்.

ஒரு உரை திருத்தியில் bashrc ஐத் திறந்து பின்வரும் வரிகளைச் சேர்க்கவும். அது வேலை செய்கிறது என்பதை நிரூபிக்க வேண்டுமென்றே முந்தைய வரிகளை வைத்திருக்கிறேன்.

$ஏற்றுமதி பாத்='$ (எதிரொலி $ பாத் | sed -e 's/: ~ /டெஸ்க்டாப் $ //')'

மாற்றாக, நீங்கள் PATH இன் மதிப்பை கைமுறையாக அமைக்கலாம். இது ஒரு உழைப்பு செயல்முறை ஆனால் மிகவும் நேரடியான மற்றும் எளிமையானது.

$ஏற்றுமதி பாத்=/usr/உள்ளூர்/sbin:/usr/உள்ளூர்/நான்:/usr/sbin:/usr/நான்:/sbin:/நான்:
/usr/விளையாட்டுகள்:/usr/உள்ளூர்/விளையாட்டுகள்:/ஒடி/நான்

இங்கே, கட்டளையின் மதிப்பு PATH க்கு ஒதுக்கப்படும். கோப்பைச் சேமித்து bashrc ஐ மீண்டும் ஏற்றவும்.

$ஆதாரம்/.bashrc

முடிவை சரிபார்க்கலாம்.

$வெளியே எறிந்தார் $ பாத்

PATH மதிப்பு புதுப்பிக்கப்பட்டது!

இறுதி எண்ணங்கள்

பாஷில், PATH மாறி ஒரு முக்கியமான ஒன்றாகும். பாஷ் அமர்வின் மூலம் இயங்கும் எந்த நிரலும் மாறியைப் பெறுகிறது, எனவே PATH தேவையான கோப்பகங்களை மட்டுமே உள்ளடக்கியது என்பது முக்கியம். மேலும் கோப்பகத்தைச் சேர்ப்பது கணினியில் பணிநீக்கத்தை மட்டுமே சேர்க்கும்.

பேஷிற்கான அனைத்து சுற்றுச்சூழல் மாறிகளையும் பார்க்க, இந்த கட்டளையை இயக்கவும். முதல் கட்டளை பகுதி அனைத்து சுற்றுச்சூழல் மாறிகளையும் வழங்கும், இரண்டாவது பகுதி வெளியீட்டை ஏறுவரிசையில் வரிசைப்படுத்தும்.

$பொறாமை | வகைபடுத்து

உங்கள் பேஷ் அனுபவத்தை மசாலா செய்ய விரும்புகிறீர்களா? பேஷ் மாற்றுப்பெயர்கள் விஷயங்களை வேகப்படுத்துவதற்கும் மசாலா செய்வதற்கும் ஒரு தனித்துவமான வழியை வழங்குகின்றன. பாஷ் மாற்றுப்பெயர்கள் பற்றி மேலும் அறிக .

மகிழுங்கள்!