Používam Arch Linux s MATE ako desktopové prostredie. Terminálnym emulátorom je terminál MATE. Nedávno som nainštaloval Jekyll s gem install jekyll
, Ale keď som bežal jekyll -v
hovorí bash: jekyll: command not found
, Takže som sa snažil pridať cestu Jekyll k premennej PATH.
Bežal som PATH=$PATH/$HOME/.gem/ruby/2.2.0/bin
a fungovalo to perfektne. Teraz môžem spustiť príkazy jekyll. Ak chcete to natrvalo pridať do premennej PATH, upravil som ~/.bash_profile
súbor ako nasledujúci. Po reštarte nepracuje. ale
source ~/.bash_profile
funguje perfektne.
#
# ~/.bash_profile
#
[[ -f ~/.bashrc ]] && . ~/.bashrc
export PATH="${PATH}:/home/heisenberg/.gem/ruby/2.2.0/bin"
Podľa ArchWiki to je správny spôsob, ako niečo stočiť na PATH. Ale to nefunguje, môže niekto na mňa prísť na to, kde je to zlé?
[N. B.: Pridávanie rovnakého riadku v ~/.bashrc
je v poriadku.]
odpovede:
0 pre odpoveď č. 1V závislosti od možnosti, bash
môže byť spustený ako interaktívny shell alebo prihlasovací shell, Predvolené interaktívny shell režim sa nečíta ~/.bash_profile
. prihlasovací shell bash do.
pozri:
Po prvé, niektoré nastavenia:
% cat ~/.bashrc
…
export BASHRC="yes"
…
% cat ~/.bash_profile
…
export BASH_PROFILE="yes"
…
Teraz spustite pravidelný (interaktívne) bash:
% bash
[galaux@magenta ~]$ echo $BASHRC
yes
[galaux@magenta ~]$ echo $BASH_PROFILE
Všimnite si, že sme nie dostať yes
s týmto posledným.
Teraz s Prihlásiť sa shell:
% bash --login
[galaux@magenta ~]$ echo $BASHRC
yes
[galaux@magenta ~]$ echo $BASH_PROFILE
yes
Pozri odsek zaklínanie z man bash
.