gpt4 book ai didi

twisted - 使用 Twisted 的沙井编写脚本

转载 作者:行者123 更新时间:2023-12-02 16:55:17 26 4
gpt4 key购买 nike

摘要:无法自动向 Twisted 的检修孔发出命令。寻求解决方案/建议。

Twisted 有一个很棒的功能,称为 manhole。它允许用户通过 ssh 连接到当前正在运行的 Twisted 服务器并检查其内部/与其进行交互。

我想用它来编写一些脚本。连接到沙井只需要

ssh localhost -p 12345

然后用户被放入 Python 解释器中,可以访问正在运行的进程。

通常使用 ssh,可以在远程服务器上运行命令并退出,例如

ssh foo@bar.com 'ls'

将在登录目录上执行“ls”,然后 ssh 连接将关闭。

我想执行类似的操作

ssh localhost -p 12345 'print "hello, world"'

到沙井,但我收到(带有 ssh 详细信息):

debug1: Authentication succeeded (password).
debug1: channel 0: new [client-session]
debug1: Entering interactive session.
debug1: Sending environment.
debug1: Sending env LANG = en_US.UTF-8
debug1: Sending command: print "Hello world"
exec request failed on channel 0

无论如何,我可以自动化沙井操作吗?

最佳答案

ssh localhost -p 12345 print 'Hello world' 失败的原因是“print 'Hello world'”作为“exec”请求发送,该请求应该执行命令。您的服务器(沙井)不支持(显然)。

您需要提供 python 解释器标准输入。例如:

ssh -tt localhost -p 12345 << EOS
print "Hello world"
EOS

注意 -tt 标志 - 它强制 ssh 分配 tty,无论您的输入设备不是 tty。如果没有 -tt,您将收到“ channel 上的 shell 请求失败”错误。

关于twisted - 使用 Twisted 的沙井编写脚本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32254530/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com