SSH 连接到 Ubuntu 机器后,别名停止工作

Viv*_*oel 1 ssh bash ubuntu ubuntu-12.04

我正面临 Ubuntu 的问题。ll如果我从 SSH 登录到我的系统,那么Bash 别名就不起作用。bash在 shell 中作为命令写入后它工作正常。

它曾经工作过。可能是什么问题呢?

 echo $SHELL
/bin/bash
Run Code Online (Sandbox Code Playgroud)

slh*_*hck 5

根据 Bash 是否作为登录 shell 启动,您可以在不同的文件集上设置这些别名。

如果你登录到你的机器(即供应的用户名和密码),然后击将永远加载/etc/profile,并加载第一的~/.bash_profile~/.bash_login而且~/.profile如果发现其中之一。

如果您从您的机器启动一个新终端,您将不会启动一个登录 shell,而是一个所谓的交互式 shell。这会加载~/.bashrc,但上面没有其他加载,这也是您的别名可能会被存储的位置。*

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

if [ -f ~/.bashrc ]; then
   source ~/.bashrc
fi
Run Code Online (Sandbox Code Playgroud)

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

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