【问题标题】:Paramiko stdout.readlines() vs channel.recv()Paramiko stdout.readlines() 与 channel.recv()
【发布时间】:2020-10-13 11:18:44
【问题描述】:

我是 python paramiko 的新手。我知道有两种方法可以在远程服务器invokde_shellexec_command 中执行命令。在少数情况下使用stdout.readlines() 读取输出,而在其他情况下使用channel.recvexit_status 作为循环条件。很难理解两者之间的区别以及我的脚本使用哪一个。谁能解释一下?

【问题讨论】:

    标签: python-3.x ssh paramiko pexpect


    【解决方案1】:

    这是一个相当广泛的问题,所以只是简单地说:
    readlines vs recv – 这不是 Paramiko 特有的。在读取本地文件或本地程序输入时,您拥有相同的功能集。使用任何适合您的需求。如果您需要按字节读取(例如,在处理二进制输入时),您可能想要使用recv(或read)。如果要按行处理文本输入,请使用readlines(或readline)。

    您还将 shell 与 exec 混合到您的问题中,什么是单独的东西,在这里介绍:
    What is the difference between exec_command and send with invoke_shell() on Paramiko?


    总的来说,你最好问一个关于实现你的具体问题的具体问题。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-02-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-12-27
      • 2012-10-19
      • 2019-05-09
      • 2015-07-11
      相关资源
      最近更新 更多