Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/ssh/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何从Python脚本中包装交互式ssh会话的调用?_Python_Ssh - Fatal编程技术网

如何从Python脚本中包装交互式ssh会话的调用?

如何从Python脚本中包装交互式ssh会话的调用?,python,ssh,Python,Ssh,我正在编写SSH命令行包装器,但我发现它不希望以交互方式运行 假设我有ssh.py,它应该建立一个交互式ssh会话 如果我跑步: subprocess.open('ssh-t server')和p.wait(),我将得到一个错误: 不会分配伪终端,因为stdin不是终端。 如果我尝试使用-t-t强制它,它将阻塞 注意:我确实需要一个交互式会话,因为我试图使用screen恢复以前的连接 我怎样才能解决这个问题 注意:我不想以任何方式控制从python调用的ssh。您可能想查看它。您可能想查看它

我正在编写SSH命令行包装器,但我发现它不希望以交互方式运行

假设我有
ssh.py
,它应该建立一个交互式
ssh
会话

如果我跑步:

  • subprocess.open('ssh-t server')
    p.wait()
    ,我将得到一个错误:
    不会分配伪终端,因为stdin不是终端。
  • 如果我尝试使用
    -t-t
    强制它,它将阻塞
注意:我确实需要一个交互式会话,因为我试图使用
screen
恢复以前的连接

我怎样才能解决这个问题


注意:我不想以任何方式控制从python调用的ssh。

您可能想查看它。

您可能想查看它。

您看到这个相关问题的答案了吗:@jedwards现在我看到了,另一个仍然没有提供问题的答案。我应该在
bash
中重新实现我的包装器吗?如果调用
bash
,则不会出现相同的问题。尽管如此,我还是更喜欢使用python,因为在bash中执行相同的逻辑将是。。。真的很难看。你说的“我不想以任何方式从Python控制被调用的ssh”到底是什么意思?在底层操作系统中生成ssh可以吗,但是看看python中的ssh提示?那么你基本上想要一个python终端仿真器?你看到这个相关问题的答案了吗:@jedwards现在我看到了,但另一个没有提供问题的答案。我应该在
bash
中重新实现我的包装器吗?如果调用
bash
,则不会出现相同的问题。尽管如此,我还是更喜欢使用python,因为在bash中执行相同的逻辑将是。。。真的很难看。你说的“我不想以任何方式从Python控制被调用的ssh”到底是什么意思?在底层操作系统中生成ssh可以吗,但请看python中的ssh提示?因此您基本上想要python的终端仿真器?谢谢,但在本例中,我正在寻找使用外部库的单文件解决方案。事实上,这个问题应该与SSH无关,它也应该适用于您希望在本地运行交互式控制台应用程序的情况。谢谢,但在本例中,我正在寻找一个使用外部库的单文件解决方案。事实上,这个问题应该与SSH无关,它也应该适用于您希望在本地运行交互式控制台应用程序的情况。