கட்டளைகள் வட்டு இயக்க முறைமை கட்டளைகள் மட்டுமல்ல. பாதை என்பது அடைவு பட்டியலாகும், இதில் ஷெல் இயக்க முறைமை கட்டளைகள் மற்றும் பிற கட்டளைகளை தேடுகிறது. கட்டளைகள் குறுகிய நிரல் கோப்புகள் போன்றவை. எனவே, கட்டளைகள் இயங்கக்கூடியவை. கணினியில் நிறுவப்பட்ட ஒவ்வொரு பயன்பாடும் இயங்கக்கூடிய கோப்புடன் வருகிறது. பயன்பாட்டை இயக்க, இயங்கக்கூடிய கோப்பு முதலில் ஈடுபட்டுள்ளது. இந்த இயங்கக்கூடிய கோப்புகள் கட்டளைகள் என்றும் அழைக்கப்படுகின்றன.
PATH மாறி இல்லாமல், ஒவ்வொரு கட்டளையும் முழுமையான பாதையுடன் கட்டளையிடப்படும்,
/home/john/dir1/dir2/command.exe
முதல் / ரூட் அடைவு எங்கே; ஜான் பயனருக்கான பயனர் கோப்பகம், ஜான்; dir1 மற்றும் dir2 ஆகியவை துணை அடைவுகள்; மற்றும் command.exe என்பது இயங்கக்கூடிய கோப்பின் பெயர்.
இயங்கக்கூடிய கோப்பிற்கு வேறு பல பெயர்கள் சாத்தியம். உண்மையில், command.exe இங்கே குறியீடாகும். அடைவு,/home/john/dir1/dir2 (கோப்பு இல்லாமல்), PATH மாறியில் இருந்தால், பயனர் ஜான், கட்டளையில் command.exe ஐ செயல்படுத்துவார், [மின்னஞ்சல் பாதுகாக்கப்பட்ட]: ty $ வெறுமனே தட்டச்சு செய்வதன் மூலம், command.exe, முந்தைய பாதை இல்லாமல். அது:
[மின்னஞ்சல் பாதுகாக்கப்பட்டது]: ~ $command.exeபின்னர் Enter ஐ அழுத்தவும்.
கணினியில் PATH கோப்பகங்களின் தற்போதைய பட்டியலைப் பார்க்க, தட்டச்சு செய்க:
$வெளியே எறிந்தார் $ பாத்மற்றும் முனையத்தில் Enter ஐ அழுத்தவும். இதன் விளைவாக ஏதாவது இருக்கும்,
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin
கேள்வி இப்போது உள்ளது: ஒரு அடைவு (மற்றும் அதன் முந்தைய பாதை), PATH மாறிக்கு எவ்வாறு சேர்க்கப்படுகிறது? சில நிறுவல்களுடன், அடைவு தானாகவே சேர்க்கப்படும். மற்றவர்களுடன், அதை கைமுறையாக சேர்க்க வேண்டும். இந்த கட்டுரை இரண்டு முக்கிய வழிகளை விளக்குகிறது, இதில் அடைவு சேர்க்கப்பட்டுள்ளது. அடைவு ஒரு வரிசையில் செய்யப்படுவதால் சேர்க்கப்படவில்லை (சேர்க்கப்பட்டுள்ளது). இரண்டு முக்கிய வழிகள் தற்காலிக கூட்டல் மற்றும் நிரந்தர கூட்டல் என குறிப்பிடப்படுகின்றன. இந்த கட்டுரையில் குறியீடு எடுத்துக்காட்டுகளுக்குப் பயன்படுத்தப்படும் ஷெல் பாஷ் ஆகும்.
கட்டுரை உள்ளடக்கம்
- அறிமுகம் - மேலே பார்க்கவும்
- தற்காலிக கூட்டல்
- நிரந்தர சேர்த்தல்
- முடிவுரை
தற்காலிக கூட்டல்
தற்காலிக கூட்டல் என்பது நினைவகத்தில் மட்டுமே சேர்த்தல் என்று பொருள். கணினி மறுதொடக்கம் செய்யப்படும்போது இது பயன்பாட்டிற்காக சேமிக்கப்படவில்லை.
பார்ன் ஷெல் உள்ளமைக்கப்பட்ட ஏற்றுமதி கட்டளை
எளிமையான சொற்களில், ஏற்றுமதி கட்டளை:
$ஏற்றுமதி [பெயர்[= மதிப்பு]]இந்த வழக்கில், இது நினைவகத்தில் ஒரு மாறியுக்கு ஒரு மதிப்பை மீண்டும் அளிக்கிறது.
நினைவகத்தில் உள்ள PATH மாறியானது ஏற்கனவே இது போன்ற மதிப்பைக் கொண்டிருக்கலாம்,
PATH =/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin
சேர்க்க வேண்டிய அடைவு/home/john/dir1/dir2 என்று வைத்துக்கொள்ளுங்கள். ஏற்றுமதி கட்டளையை இவ்வாறு தட்டச்சு செய்தால்,
$ஏற்றுமதி பாத்=/வீடு/ஜான்/dir1/dir2பின்னர்/home/john/dir1/dir2 ஏற்கனவே நினைவகத்தில் உள்ள அனைத்தையும் PATH மாறியின் மதிப்பாக மாற்றும்.
ஏற்றுமதி கட்டளையை இவ்வாறு தட்டச்சு செய்தால்,
$ஏற்றுமதி பாத்=$ பாத்:/வீடு/ஜான்/dir1/dir2பின்னர்,/home/john/dir1/dir2 ஏற்கனவே மாறி உள்ளவற்றின் முடிவில் தன்னை இணைக்கும். எனவே, புதிய மாறி:
PATH =/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/ வீடு/ஜான்/dir1/dir2
மேலே உள்ள குறியீட்டின் முந்தைய வரியில், ஏற்கனவே இருக்கும் மதிப்பின் பகுதி புதிய பகுதியிலிருந்து பெருங்குடலுடன் பிரிக்கப்பட்டிருப்பதைக் கவனியுங்கள், இது ‘:’. குறியீட்டின் வரிசையில் $ PATH, ஏற்கனவே நினைவகத்தில் உள்ள PATH மதிப்பில் விரிவடைகிறது (மாற்றப்படுகிறது).
இப்போது, ஒரே கட்டளை ஒன்றுக்கு மேற்பட்ட கோப்பகங்களில் இருக்கலாம். இயங்கக்கூடிய கட்டளையானது, முந்தைய பாதையில் வரியில் தட்டச்சு செய்யப்படும்போது, ஷெல் PATH மாறியின் மதிப்பை (சரம்) நினைவகத்தில், இடமிருந்து வலமாக தேடத் தொடங்குகிறது. எனவே, மேலே உள்ள குறியீட்டின் வரி,/home/john/dir1/dir2 தேடலில் கடைசியாக வரும். அவருடைய அடைவு கடைசியாக வர வேண்டும் என்று யார் விரும்புகிறார்கள்? - யாரும் இல்லை. எனவே, அடைவைச் சேர்க்க (சேர்க்க) ஒரு சிறந்த வழி பின்வருமாறு:
$ஏற்றுமதி பாத்=/வீடு/ஜான்/dir1/dir2:$ பாத்/home/john/dir1/dir2 இப்போது ஆரம்பத்தில் உள்ளது, அடுத்த கோப்பகத்திலிருந்து ஒரு பெருங்குடலுடன் பிரிக்கப்பட்டது. எனவே, [மின்னஞ்சல் பாதுகாக்கப்பட்ட] வரியில்: ~ $,
[மின்னஞ்சல் பாதுகாக்கப்பட்டது]: ~ $ஏற்றுமதி பாத்=/வீடு/ஜான்/dir1/dir2:$ பாத்Enter ஐ தட்டச்சு செய்து அழுத்தினால், கட்டளை, command.exe கோப்பகத்தில், dir2, உடன் செயல்படுத்தப்படும்:
[மின்னஞ்சல் பாதுகாக்கப்பட்டது]: ~ $command.exeகணினி அணைக்கப்படாத வரை, பயனர் முந்தைய பாதையை தட்டச்சு செய்யாமல் command.exe ஐ தொடர்ந்து செயல்படுத்துவார்.
கணினி அணைக்கப்படும் போது, சீரற்ற அணுகல் நினைவகத்தில் உள்ள அனைத்தும் அழிக்கப்படும். கெட்ட செய்தி என்னவென்றால், கணினி மறுதொடக்கம் செய்யும் ஒவ்வொரு முறையும் கணினி பயனர் தனது கோப்பகத்தை PATH மாறிக்குச் சேர்க்கும் செயல்முறையை மீண்டும் செய்ய வேண்டும். இன்று அதைச் செய்ய யாரும் விரும்பவில்லை. எனவே, நிரந்தர சேர்க்கை அணுகுமுறை பரிந்துரைக்கப்பட்ட அணுகுமுறையாகும். அதாவது, PATH உடன் கூடுதலாக, சேமிக்கப்பட வேண்டும் (வன் வட்டில்).
நிரந்தர சேர்த்தல்
மேற்கண்ட விவாதத்திலிருந்து, செய்யப்பட்ட மாற்றத்தை (ஹார்ட் டிஸ்க்கில்) சேமிப்பதே யோசனை. எனவே, கணினி துவங்கும் ஒவ்வொரு முறையும் ஷெல் படிக்கும் கோப்பில் மாற்றம் சேமிக்கப்பட்டால், அது நன்றாக இருக்கும். அதாவது, ஒவ்வொரு முறையும் கணினி துவங்கும் போது, நினைவகத்தில் உள்ள PATH மாறி சரியான முறையில் புதுப்பிக்கப்படும். ஒரு கணினி தொடங்கும் போது, துவக்கும்போது, அது சில கோப்புகளைப் படிக்கிறது. லினக்ஸிற்கான பாஷ் ஷெல் படிக்கும் கோப்புகளில் ஒன்று, ~/.bashrc. கோப்பின் பெயர். bashrc , புள்ளியில் தொடங்கி. இது பயனர் கோப்பகத்தில் உள்ளது.
பாஷ் என்பது ஒரு ஷெல் மட்டுமே, இன்று லினக்ஸின் மிகவும் பிரபலமான ஷெல். லினக்ஸிற்கான மற்றொரு ஷெல் Zsh. Zsh உடன், தொடர்புடைய கோப்பு ~/. zshrc , இன்னும் பயனர் கோப்பகத்தில். ஷெல் தொடங்கும் போது, துவக்கத்தில், அது இந்தக் கோப்பைப் படிக்கிறது. பாஷ், கோப்பு, ~/.bashrc. எனவே, மேலே உள்ள கூட்டல் குறியீடு ~/.bashrc கோப்பில் தட்டச்சு செய்தால், அடைவு எப்போதும் நினைவகத்தில் இருக்கும், ஏனெனில் ~/.bashrc எப்போதும் PATH இல் சேர்க்கப்படும், ஒவ்வொரு முறையும் கணினி துவங்கும். கணினி அணைக்கப்படும் வரை அது நினைவகத்தில் இருக்கும்.
பாஷில், ~/.bashrc ஒரு மறைக்கப்பட்ட கோப்பு, எனவே கட்டளையின் சாதாரண பயன்பாடு, ls அதை காட்டாது. ~/.bashrc சில பாஷ் (ஷெல்) கட்டளைகளைக் கொண்டுள்ளது. உபுண்டு என்பது லினக்ஸின் மாறுபாடு. உபுண்டு ஒரு உரை எடிட்டருடன் வருகிறது. ஆசிரியரின் கணினியில், உபுண்டு உரை எடிட்டரின் பின்னணி கருப்பு.
மேலே உள்ள கூட்டல் கட்டளை (உடனடியாக இல்லாமல்) ~/.bashrc கோப்பில் சேர்க்கப்பட வேண்டும். கிடைக்கக்கூடிய உள்ளடக்கத்துடன் கோபப்படாமல் இருக்க கோப்பின் முடிவில் அதைச் சேர்ப்பது நல்லது, அது சரியாக வேலை செய்கிறது.
உபுண்டுவில் ~/.bashrc ஐ திறக்க, முனையத்தில் உள்ள கட்டளை வரியில் பின்வருவதை தட்டச்சு செய்து Enter ஐ அழுத்தவும்:
$நானோஆ/.bashrcநானோ உரை ஆசிரியர். இங்கே, நானோ ஒரு கட்டளை (இயங்கக்கூடியது), அதன் வாதம், ~/.bashrc. முனைய சாளரத்தை மேலடுக்க உரை கோப்பில் உள்ளடக்கத்தின் உள்ளடக்கம் திறக்கப்பட வேண்டும்.
Editor/.bashrc கோப்பு உரை திருத்தியில் திறக்கும், ஒருவேளை கருப்பு பின்னணியில். கர்சர் மேல் இடது மூலையில் ஒளிரும்.
கர்சர் கோப்பின் முடிவை அடையும் வரை விசைப்பலகையில் கீழ்-அம்பு விசையை தொடர்ந்து அழுத்தவும். ஒரு புதிய வரியைச் சேர்க்கவும்,
$ஏற்றுமதி பாத்=/வீடு/ஜான்/dir1/dir2:$ பாத்அது மட்டுமல்ல. ~/.Bashrc கோப்பிற்கான மாற்றம் சேமிக்கப்படவில்லை. செய்யப்பட்ட மாற்றத்துடன் கோப்பைச் சேமிக்க, Ctrl+o ஐ அழுத்தி, தோன்றும் பிற வழிமுறைகளைப் பின்பற்றவும். உரை திருத்தியிலிருந்து வெளியேற, Ctrl+x ஐ அழுத்தவும், சாதாரண முனைய சாளரம் உரை எடிட்டர் சாளரத்தை மாற்ற வேண்டும். பிற ஷெல் கட்டளைகள் பின்னர் வழங்கப்படலாம்.
எதிரொலி $ PATH வழங்கப்பட்டால், புதிய கோப்பகம் காட்சியில் காணப்படாது. இங்கிருந்து தொடர இரண்டு வழிகள் உள்ளன: கணினியை மறுதொடக்கம் செய்யுங்கள் அல்லது command/.bashrc கோப்பின் புதிய உள்ளடக்கங்களை மூலக் கட்டளையுடன் நினைவகத்தில் பெறுங்கள். பின்வருமாறு மூல கட்டளையைப் பயன்படுத்துவது எளிது:
$ஆதாரம்ஆ/.bashrcமறுதொடக்கம் செய்யாமல் மூலக் கட்டளை வழங்கப்பட்டால், எதிரொலி $ PATH முடிவு (காட்சி) இல் சேர்க்கப்பட்ட புதிய கோப்பகத்தைக் காண்பிக்கும். ஆர்வமுள்ள கட்டளையை முந்தைய பாதை இல்லாமல் தட்டச்சு செய்யலாம்.
குறிப்பு: PATH மதிப்பின் (பட்டியல்) முடிவிற்கும் ~/.bashrc கோப்பின் முடிவிற்கும் இடையில் குழப்பமடைய வேண்டாம். மேலும், நினைவகத்தில் PATH இல் உள்ள ஒரு கோப்பகத்திற்கும், வன்வட்டில் உள்ள கோப்பகத்தில் இயங்கக்கூடிய கோப்புக்கும் இடையில் குழப்பமடைய வேண்டாம்.
முடிவுரை
PATH என்பது லினக்ஸ் ஓடுகளில் உள்ளமைக்கப்பட்ட மாறியாகும். PATH இன் மதிப்பு கோலன்களால் பிரிக்கப்பட்ட கோப்பகங்களின் பட்டியல். இந்த ஒவ்வொரு அடைவுகளுக்கும் வன் வட்டில் ஒரு கட்டளை (இயங்கக்கூடிய கோப்பு) உள்ளது. பாதைக்கு முன்னால் விற்காமல் ஒரு கட்டளை வழங்கப்பட்டால், கட்டளைக்கான இந்த அடைவுகளை ஷெல் பார்க்கும். எந்த கோப்பகத்திலும் கட்டளையைப் பார்க்கவில்லை என்றால், கட்டளை செயல்படுத்தப்படாது. இந்த வழக்கில், கட்டளையை இயக்க, கட்டளையை அதன் பாதையுடன் முன்னெடுக்க வேண்டும். கட்டளை PATH மதிப்பில் ஒன்றுக்கு மேற்பட்ட கோப்பகங்களில் இருக்கலாம். கட்டளை கொண்ட முதல் கோப்பகத்தை ஷெல் பார்த்தவுடன், அது கட்டளையை செயல்படுத்துகிறது. PATH மதிப்பு உண்மையில் கோலன்களால் பிரிக்கப்பட்ட கோப்பகங்களைக் கொண்ட ஒரு சரம்.
பிரச்சனை PATH இல் ஒரு புதிய பயன்பாட்டை இயங்குவதற்கான அடைவை எவ்வாறு சேர்ப்பது என்பதுதான். சில சந்தர்ப்பங்களில், புதிய பயன்பாட்டின் நிறுவல் நிரலால் இது தானாகவே செய்யப்படுகிறது. மற்ற சந்தர்ப்பங்களில், இது கைமுறையாக செய்யப்பட வேண்டும். கைமுறையாக செய்ய இரண்டு வழிகள் உள்ளன, அவை குறிப்பிடப்படுகின்றன: தற்காலிக கூட்டல் மற்றும் நிரந்தர சேர்த்தல். தற்காலிக கூட்டல் ஏற்றுமதி கட்டளையைப் பயன்படுத்துகிறது மற்றும் கணினி இருக்கும் போது கோப்பகத்தைச் சேர்க்கிறது. நிரந்தர கூட்டல் ஏற்றுமதி கட்டளை வரியை எதிர்கால செயல்பாடுகளுக்கு ~/.bashrc துவக்க கோப்பில் (பாஷ்) சேமிக்க வேண்டும்.