自动 ssh 和 screen - 我错过了什么?

自动 ssh 和 screen - 我错过了什么?

这工作正常,但不会~/.bash_profile在 server2 上加载我的。为什么?

$ ssh -A -t server1 ssh -A -t server2 bash -c "screen -dR"

答案1

bash man页面:

When an interactive shell that is not a login shell  is  started,  bash
reads  and  executes  commands  from /etc/bash.bashrc and ~/.bashrc, if
these files exist.  This may be inhibited by using the  --norc  option.
The  --rcfile  file option will force bash to read and execute commands
from file instead of /etc/bash.bashrc and ~/.bashrc.

您可以重新附加到正在运行的现有会话screen(可能已经在运行bash),这不需要登录 shell。或者您screen使用新的交互式非登录 shell 创建一个新会话。仅登录 shell 进程.bash_profile

bash在命令行上指定的启动screen命令是完全不同的调用。

相关内容