මම වෙනස්කම් කරන්නේ නම් .bashrc, පිටතට නොගොස් නැවත ඇතුල් නොවී එය නැවත පූරණය කරන්නේ කෙසේද?
මම වෙනස්කම් කරන්නේ නම් .bashrc, පිටතට නොගොස් නැවත ඇතුල් නොවී එය නැවත පූරණය කරන්නේ කෙසේද?
Answers:
ඔබට විධානය ඇතුළත් කළ යුතුය:
source ~/.bashrcහෝ ඔබට විධානයේ කෙටි අනුවාදය භාවිතා කළ හැකිය:
. ~/.bashrcalias editbashrc='vim ~/.bashrc; source ~/.bashrc'. අභිරුචි අන්වර්ථය භාවිතා කරන්නේ නම්, සංස්කරණය කිරීමෙන් පසුව, නැවත පූරණය කිරීම ගැන සිතීමට ඔබට අවශ්ය නොවන බැවින් මෙය සංස්කරණය වඩාත් සුමට කරයි.
                    නැතහොත් ඔබට භාවිතා කළ හැකිය:
exec bashමෙය එකම දේ කරන අතර මතක තබා ගැනීම පහසුය (අවම වශයෙන් මට).
මෙම execවිධානය සම්පූර්ණයෙන්ම නිශ්චිත විධාන රේඛාව ධාවනය වන ෂෙල් ක්රියාවලිය විස්ථාපනය කරනු ඇත. අපගේ උදාහරණයේ දී, එය වත්මන් කවචය ඕනෑම දෙයක් නැවුම් අවස්ථාවක් සමඟ ප්රතිස්ථාපනය කරයි bash(යාවත්කාලීන කළ වින්යාස ගොනු සමඟ).
source .bashrcවිධානයේ වෙනස පැහැදිලි කළ හැකිද exec bash?
                    sourceයනු ගොඩනඟන ලද ෂෙල් විධානයකි, එය වත්මන් කවචය තුළ තර්කයක් ලෙස සම්මත කරන ලද ගොනුවේ අන්තර්ගතය ක්රියාත්මක කරයි . එබැවින් ඔබේ උදාහරණයේ දී එය වත්මන් කවචයේ .bashrc ගොනුව ක්රියාත්මක කරයි. හා execවිධානය ලබා දී වැඩසටහන සමග ෂෙල් විස්ථාපනය, ඔබගේ උදාහරණය, එය ඔබගේ ෂෙල් bash (යාවත්කාලීන කරන මානකරන ගොනු සමඟ) සමග ප්රතිස්ථාපනය
                    . ~/.bashrcදී ක්රියාත්මක වනු ඇත dashවඩා bash, ඒ නිසා නිසා දෝෂයක් පවතී shoptඅතුරුදහන් කර ඇත. sourceකවචයෙන් සොයාගත නොහැකි නිසා එම විසඳුම ද එළියට එයි. මම මෙය අත්හදා බැලූ අතර ඩොකර් රූපය සුමටව ගොඩනගා ඇත!
                    source ~/.bashrcඔබගේ සමස්ත ෂෙල් පරිසරය සුරැකෙනු ඇත (බොහෝ විට මූලාශ්රය මගින් වෙනස් කර ඇත ~/.bashrc), නමුත් exec bashඔබේ වර්තමාන කවචයේ පරිසර විචල්යයන් පමණක් ආරක්ෂා කරනු ඇත (ෂෙල් විචල්යයන්, ක්රියාකාරිත්වය, විකල්පයන් නැතිව වත්මන් කවචයේ කිසියම් තාවකාලික වෙනස්කමක්). ඔබගේ අවශ්යතා මත පදනම්ව, එක් හෝ වෙනත් ප්රවේශයක් වඩාත් කැමති විය හැකිය.
                    exec bash. මෙම execවිධානය විස්ථාපනය අපේ නඩුව, bash දී, මෙම වැඩසටහන සමග ෂෙල්. ඉතින්, පර්යන්තය තුළ සෑම විටම බැෂ් එකක එක් අවස්ථාවක් තිබේ.
                    කිරීමට සැළසුම් හා සසඳා වඩාත්ම ජනප්රිය පිළිතුරු දෙකක්, . ~/.bashrcසහ exec bash:
විසඳුම් දෙකම effectively ලදායී ලෙස නැවත පූරණය වේ ~/.bashrc, නමුත් වෙනස්කම් තිබේ:
. ~/.bashrcහෝ ඔබගේ වර්තමාන කවචය ආරක්ෂාsource ~/.bashrc කරනු ඇත :
~/.bashrcවත්මන් ෂෙල් බවට ( මාර්ග අපගත ) වර්ගයන්, එම වත්මන් ෂෙල් හා එහි රාජ්ය ඇත , කල් තබා ගන්නා පරිසරය විචල්ය, සිප්පි කටු විචල්ය, සිප්පි කටු විකල්ප, සිප්පි කටු කටයුතු, සහ විධාන ඉතිහාසය ද ඇතුළත් වන,.exec bash, හෝ, වඩාත් ශක්තිමත් ලෙස, exec "$BASH"[1] , ඔබගේ වර්තමාන කවචය නව අවස්ථාවක් සමඟ ප්රතිස්ථාපනය කරනු ඇත , එබැවින් ඔබගේ වර්තමාන කවචයේ පරිසර විචල්යයන් පමණක් ආරක්ෂා කරයි (ඔබ තාවකාලිකව අර්ථ දක්වා ඇති ඒවා ද ඇතුළුව).
ඔබගේ අවශ්යතා මත පදනම්ව, එක් හෝ වෙනත් ප්රවේශයක් වඩාත් කැමති විය හැකිය.
[1] exec bashන්යායාත්මකව , කලින් ලැයිස්තුගත කර ඇති නාමාවලියක පවතින විට, වර්තමාන කවචය ආරම්භ කළ ඒවාට වඩා වෙනස් bash ක්රියාකාරීත්වයක් ක්රියාත්මක කළ $PATHහැකිය. විශේෂ විචල්යය $BASHසෑම විටම වත්මන් කවචය ආරම්භ කළ ක්රියාත්මක කළ හැකි සම්පූර්ණ මාර්ගය අඩංගු වන බැවින් එකම ක්රියාත්මක කළ හැකි exec "$BASH"භාවිතා කිරීම සහතික කෙරේ . අවට 
සටහනක් : ද්විත්ව උපුටා දැක්වීම මඟින් බාෂ්ගේ අර්ථ නිරූපණයකින් තොරව විචල්ය අගය භාවිතා වන බව සහතික කරයි; වටිනාකමට කාවැද්දූ අවකාශයක් හෝ වෙනත් ෂෙල් මෙටාචරැක්ටර් නොමැති නම් (මෙම අවස්ථාවේදී එය එසේ නොවේ), ඔබට තදින් ද්විත්ව උපුටා දැක්වීම් අවශ්ය නොවේ, නමුත් ඒවා භාවිතා කිරීම හොඳ පුරුද්දකි."..."$BASH
exec $BASHප්රභවයක් වනු ඇත ~/.bashrc, එබැවින් නව සැසියේදී ෂෙල් පරිසරයට එහි වෙනස්කම් ඔබ දකිනු ඇත.
                    වැරදි ඉංග්රීසි එකතු කිරීම සඳහා යමෙක් මගේ පිළිතුර සංස්කරණය කළේය, නමුත් මෙහි මුල් පිටපත විය, එය පිළිගත් පිළිතුරට වඩා පහත් ය.
. .bashrc~/, නමුත් ඉහල පිළිතුර වැඩසටහන් දෙකම සිට source ~/.bashrcහා . ~/.bashrcමම පුදුම මෙම පිළිතුර හුදෙක් අතිරික්ත ලෙස මකාදැමිය යුතුයි නම්.
                    ඔබගේ පරිසරය අනුව, යතුරු ලියනය කරන්න
bashවැඩ කළ හැකිය.
. ~/.bashrcsource ~/.bashrcexec bash
execවිධානය මඟින් ලබා දී ඇති වැඩසටහනක් මඟින් කවචය ප්රතිස්ථාපනය කරයි ... - WhoSayIn
exec bashවත්මන් කවචයේ පරිසරය තවමත් උරුම වේ. exec env -i bashවඩා සමීප වනු ඇත (හෝ exec env -i bash -lඔබ දැනට පිවිසුම් කවචයක සිටී නම්).
                    ඔබේ පරිසරය මත පදනම්ව, ඔබ SSH සැසියක් විවෘත කරන විට ස්වයංක්රීයව .bashrc පැටවීම සඳහා ස්ක්රිප්ටින් එක් කිරීමට ඔබට අවශ්ය විය හැකිය. මම මෑතකදී උබුන්ටු ධාවනය වන සේවාදායකයකට සංක්රමණය කළ අතර, එහි .profile, .bashrc හෝ .bash_profile පෙරනිමියෙන් පටවනු ලැබේ. .Bashrc හි ඕනෑම ස්ක්රිප්ට් එකක් ධාවනය කිරීමට නම් මට ධාවනය කිරීමට සිදුවියsource ~/.bashrc කිරීමට, සැසියක් විවෘත කළ සෑම අවස්ථාවකම කිරීමට සිදුවිය, එය දුරස්ථ යෙදවුම් ධාවනය කිරීමේදී උපකාරී නොවේ.
සැසියක් විවෘත කිරීමේදී ඔබේ .bashrc පැටවීම ස්වයංක්රීයව ලබා ගැනීමට, .profile වෙත මෙය එක් කිරීමට උත්සාහ කරන්න:
if [ -n "$BASH_VERSION" ]; then
    # include .bashrc if it exists
    if [ -f "$HOME/.bashrc" ]; then
        . "$HOME/.bashrc"
    fi
fiඔබේ සැසිය නැවත විවෘත කරන්න, එය ඔබට .bashrc හි ඇති ඕනෑම මාර්ග / ස්ක්රිප්ට් පූරණය කළ යුතුය.
මගේ වල්ටර් වලාකුළු මත පදනම් වූ සේවාදායකය සැකසීමට මම ඊසෙන්ජින් භාවිතා කළෙමි. 
මගේ බාෂ් ගොනුව මට හමු විය /etc/bash.bashrc.  
ඒ නිසා source /etc/bash.bashrcමා වෙනුවෙන් උපක්රමය කළා!
යාවත්කාලීන කිරීම
හිස් සේවාදායකයක් සැකසීමේදී (උබුන්ටු 16.04), ඔබ තවමත් පරිශීලක නාමයක් සකසා නොමැති විට සහ root හරහා ප්රවේශ වන විට ඉහත තොරතුරු භාවිතා කළ හැකිය.
පරිශීලකයෙකු නිර්මාණය කිරීම වඩාත් සුදුසුය (sudo privateledges සමඟ), ඒ වෙනුවට මෙම පරිශීලක නාමය ලෙස පුරනය වන්න. 
මෙය .profile සහ .bashrc ගොනු ඇතුළුව ඔබගේ සැකසුම් සඳහා නාමාවලියක් නිර්මාණය කරයි. 
https://linuxize.com/post/how-to-create-a-sudo-user-on-ubuntu/
දැන්, ඔබ ~/.bashrcගොනුව සංස්කරණය කර (සහ "මූලාශ්රය") කරනු ඇත.  
මගේ සේවාදායකයේ, මෙය පිහිටා ඇත්තේ /home/your_username/.bashrc
( your_usernameඇත්ත වශයෙන්ම ඔබ ඉහත නිර්මාණය කළ නව පරිශීලක නාමය කොතැනද , දැන් පුරනය වන්න)
exec bash යනු ධාරාව ප්රතිස්ථාපනය කිරීම සඳහා නව කවචයක් නැවත ක්රියාත්මක කිරීමට සහ දියත් කිරීමට හොඳ ක්රමයකි. පිළිතුරට එකතු කිරීම සඳහා, $ ෂෙල් විසින් වත්මන් කවචය නැවත ලබා දෙයි. පහත දැක්වෙන දෑ භාවිතා කිරීමෙන්, එය වත්මන් කවචය නැවත පූරණය කරනු ඇත.
exec $SHELL -l;
මම PATH වෙනස් කරන විට ක්රියා කරන්නේ කුමක්ද: exec "$BASH" --login
~/.bashrc, වන --loginකරනු නොහැකි (සෘජුවම) රීලෝඩ්; පරිශීලක මට්ටමින්, එය ඒ වෙනුවට නැවත පූරණය වේ ~/.bash_profile( ~/.bash_loginහෝ ~/.profile).
                    මම msysgit හි පහත විධානය භාවිතා කරමි
. ~/.bashrcහි කෙටි අනුවාදය
source ~/.bashrcඅන්තර්ක්රියාකාරී කවචයක් උපකල්පනය කරමින්, ඔබගේ වර්තමාන විධාන ඉතිහාසය තබා ගැනීමට සහ / etc / profile (/ etc / bashrc ඇතුළු පරිසර දත්ත පටවන සහ Mac OS X මත පැටවීම /etc/paths.d/ හරහා අර්ථ දක්වා ඇති මාර්ග පැටවීමට ඔබ කැමතිද? path_helper), ඔබේ විධාන ඉතිහාසය එකතු කර පිවිසුම් ('-l') විකල්පය සමඟ bash ක්රියාත්මක කරන්න:
history -a && exec bash -lපිරිසිදු exec bashවිධානය මඟින් පරිසර විචල්යයන් ආරක්ෂා කරනු ඇති බව මම දුටුවෙමි , එබැවින් ඔබ exec -c bashහිස් පරිසරයක බාෂ් ධාවනය කිරීමට භාවිතා කළ යුතුය .
උදාහරණයක් ලෙස, ඔබ විසින් bash ලොගින්, සහ export A=1ඔබ නම්, exec bashමෙම, A == 1.
ඔබ නම් exec -cl bash, Aහිස්.
මම හිතන්නේ මෙය ඔබේ කාර්යය කිරීමට හොඳම ක්රමයයි.
මට පෞද්ගලිකව තිබේ
alias ..='source ~/.bashrc'
මගේ bashrc හි, එවිට මට එය නැවත පූරණය කිරීමට ".." භාවිතා කළ හැකිය.
..අන්වර්ථයක් ලෙස භාවිතා කරයි cd .., එබැවින් එය ඉතා ව්යාකූල වනු ඇත.
                    alias rehash='source ~/.bashrc'මගේ තේරීම.
                    
export PATH=$PATH:fooඉන්පසු ඔබ එය වෙනස් කරයිexport PATH=$PATH:bar. ඔබ ලොග් වී ආපසුbarගියහොත්, එය පවතින්නේ PATH හි පමණි, නමුත් ඔබ යෝජනා කරන දේ කරන්නේ නම්, දෙකමfooසහbarPATH හි ඇත. මේ සඳහා ක්රමයක් ගැන ඔබ දන්නවාද?