Archlinux + MATE Terminal - `.bash_profile`未被采购

时间:2015-11-18 17:10:49

标签: bash terminal archlinux .bash-profile mate

我使用带有MATE的Arch Linux作为桌面环境。所以终端仿真器是MATE终端。最近我使用gem install jekyll安装了Jekyll。但是当我跑jekyll -v时,它说bash: jekyll: command not found。所以我尝试将Jekyll的路径添加到PATH变量。

我跑PATH=$PATH/$HOME/.gem/ruby/2.2.0/bin并且效果很好。现在我可以运行jekyll命令了。要将其永久添加到PATH变量,我编辑了~/.bash_profile文件,如下所示。重启后无法正常工作。但 source ~/.bash_profile效果很好。

#
# ~/.bash_profile
#

[[ -f ~/.bashrc ]] && . ~/.bashrc

export PATH="${PATH}:/home/heisenberg/.gem/ruby/2.2.0/bin"

根据ArchWiki,这是将某些东西永久地交给PATH的正确方法。但它不起作用。有人可以找出错误的地方吗?

[N。 B.:在~/.bashrc中添加相同的行就没问题了。]

1 个答案:

答案 0 :(得分:0)

根据提供的选项,bash可以作为交互式shell 登录shell 运行。默认的交互式shell 模式不会读取~/.bash_profile登录shell bash do。

请参阅:

首先,一些设置:

% cat ~/.bashrc
…
export BASHRC="yes"
…
% cat ~/.bash_profile
…
export BASH_PROFILE="yes"
…

现在运行常规(交互式)bash:

% bash
[galaux@magenta ~]$ echo $BASHRC
yes
[galaux@magenta ~]$ echo $BASH_PROFILE

请注意,我们使用最后一个 获取yes

现在使用登录 shell:

% bash --login
[galaux@magenta ~]$ echo $BASHRC
yes
[galaux@magenta ~]$ echo $BASH_PROFILE
yes

请参阅man bash中的段落 INVOCATION