/ / Archlinux + terminál MATE - `.bash_profile` nie je zdrojom - bash, terminal, archlinux, .bash-profile, mate

Terminál Archlinux + MATE - `.bash_profile` nie je zdrojom - bash, terminal, archlinux, .bash-profile, mate

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ď č. 1

V 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.