我正在尝试通过结构打开一个交互式 ssh shell。
要求:
- 使用连接字符串中的结构主机远程
- 在当前终端中打开完全交互式的 shell
- 适用于 osx 和 ubuntu
- 无需在 fabric/python 和远程之间进行数据传输。所以织物任务可以在后台结束。
至今:
fabfile.py:
def test_ssh():
from subprocess import Popen
Popen('ssh user@1.2.3.4 -i "bla.pem"', shell=True)
在终端:
localprompt$ fab test_ssh
localprompt$ tcsetattr: Input/output error
[remote ubuntu welcome here]
remoteprompt$ |
然后,如果我尝试在远程提示符上输入命令,它将在本地执行并返回到本地提示符。有谁知道解决方案?
注意:我知道 fabric open_shell
,但这对我不起作用,因为 stdout 落后,导致它无法使用。