Bash:尽管不存在 .bash_profile 或 .bash_login,但“.profile”未加载(Debian 10)

Bash:尽管不存在 .bash_profile 或 .bash_login,但“.profile”未加载(Debian 10)

在我的 Debian 系统上阅读中的文档~/.profile,其中指出

  # ~/.profile: executed by the command interpreter for login shells.         
  # This file is not read by bash(1), if ~/.bash_profile or ~/.bash_login
  # exists.
  # see /usr/share/doc/bash/examples/startup-files for examples.
  # the files are located in the bash-doc package.

  # the default umask is set in /etc/profile; for setting the umask
  # for ssh logins, install and configure the libpam-umask package.
  #umask 022

但文件.profile尚未被加载。

我知道这一点是因为在启动时没有加载,并且如果不在变量中flux它就不会加载,并且该变量是在中设置的。$HOME/.local/binPATH.profile

我认为这是一个相当简单的修复/解释。有人能向我解释为什么会发生这种情况吗,或者帮助我调试原因吗?我的系统是 Debian 10(测试版)。

答案1

一般情况下,~/.profile仅加载一次,登录后直接输入。这对于设置路径很有用,但仅此而已。

如果你想执行某件事每次你打开一个 shell,将它放入~/.bashrc(或你的 shell 等效物)。

如果您希望在启动 X 时执行某些操作(如flux),请将其放入~/.xsession

别管它.profile,它只会让你头疼。

相关内容