通过 SSH 进入 Ubuntu 计算机后 Alias 停止工作

通过 SSH 进入 Ubuntu 计算机后 Alias 停止工作

我在使用 Ubuntu 时遇到了一个问题。ll如果我从 SSH 登录到我的系统,Bash 别名等将不起作用。bash在 shell 中写入命令后,它可以正常工作。

以前它可以工作。可能是什么问题?

 echo $SHELL
/bin/bash

答案1

有不同的文件集,您可以在其中设置这些别名,具体取决于 Bash 是否作为登录 shell 启动。

如果您登录到您的机器(即提供用户名和密码),那么 Bash 将始终加载,并且如果找到其中一个,则/etc/profile加载第一个。~/.bash_profile~/.bash_login~/.profile

如果您从计算机启动新终端,则不会启动登录 shell,而是启动所谓的交互式 shell。这将加载~/.bashrc,但不会加载上述任何内容,并且您的别名也可能存储在这里。*

.bashrc要在运行登录 shell 时加载的内容,您应该将以下内容添加到~/.bash_profile

if [ -f ~/.bashrc ]; then
   source ~/.bashrc
fi

通过 SSH 重新连接,别名~/.bashrc将可用。

* 如果它不在此文件中,则可能存在其他系统范围的bashrc文件,例如/etc/bash.bashrc在 Ubuntu 上。请参阅:环境变量 – 社区 Ubuntu 文档

相关内容