使用 SSH 时,该服务器上的 .bashrc 别名未被读取,即使在 .bash_profile 和 .bashrc 中正确设置

使用 SSH 时,该服务器上的 .bashrc 别名未被读取,即使在 .bash_profile 和 .bashrc 中正确设置

我使用 SSH 登录远程机器。我可以在 .bashrc 中像这样保存别名:

alias l='ls -lla'

但是当我注销并再次通过 SSH 登录时,别名不存在。但是,它在 .bash_profile 和 .bashrc 中设置正确。为什么会发生这种情况?每次我使用 SSH 时,我都必须这样做,. ~/.bashrc但我不想这样做。我该怎么做才能解决这个问题?

答案1

使用以下命令检查用户 shell

getent passwd ${USER}

然后看看结尾。如果不是 /bin/bash,请运行

chsh -s /bin/bash

如果您是域定义的用户,则您的默认 shell 可能是 /bin/sh,它可能是 bash 的符号链接,但不会解释您的 ~/.bashrc。

相关内容