首页 > 解决方案 > ssh 向远程发送命令时如何获取 ~/.bashrc

问题描述

在机器 10.10.99.10 中,有一个 ~/.bashrc 有以下行来设置一个变量。

var="hello"

当我使用ssh user@10.10.99.10: echo ${var}时, ${var} 是空的。
所以我猜 ~/.bashrc 在执行 ssh 的命令之前没有来源。

我尝试ssh user@10.10.99.10: source ~/.bashrc; echo ${var}但没有任何改变。

如何在 ssh 的命令执行之前获取 ~/.bashrc?

标签: ssh

解决方案


我找到原因了。头部有以下几行.bashrc

case $- in
    *i*) ;;
      *) return;;
esac

我回显 $- 这是hBc,所以它只是返回。

我评论这些行和所有作品。


推荐阅读