Archlinux+MATE终端-`.bash_profile`没有来源



我使用的是带有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中添加同一行可以。]

根据给定的选项,bash可以作为交互式shell登录shell运行。默认的交互式shell模式不读取~/.bash_profile登录shellbash 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中的发票段。

相关内容

  • 没有找到相关文章