当前位置: 首页 > 面试题库 >

Paramiko:从远程执行命令的标准输出中读取

沈乐邦
2023-03-14
问题内容

所以我正在与paramiko一起进行一些基本的SSH测试,并且没有将任何输出输出到stdout中。这是我的代码

import paramiko
client=paramiko.SSHClient()
client.set_missing_host_key_policy(paramiko.AutoAddPolicy())
com="ls ~/desktop"
client.connect('MyIPAddress',MyPortNumber, username='username', password='password')
output=""
stdin, stdout, stderr = client.exec_command(com)

print "ssh succuessful. Closing connection"
client.close()
print "Connection closed"
stdout=stdout.readlines()
print stdout
print com
for line in stdout:
    output=output+line
if output!="":
    print output
else:
    print "There was no output for this command"

因此,每当我运行此命令时,都会执行该命令(如执行cp之类的操作所看到的那样,文件将被复制),但是我始终会收到“此命令无输出”的信息。当输出stdout =
stdout.readlines()时,输出为[]。另外,如果我将打印语句添加到for循环中,它将永远不会运行。有人可以帮我吗?谢谢!


问题答案:

在阅读以下行之前,您已经关闭了连接:

import paramiko
client=paramiko.SSHClient()
client.set_missing_host_key_policy(paramiko.AutoAddPolicy())
com="ls ~/desktop"
client.connect('MyIPAddress',MyPortNumber, username='username', password='password')
output=""
stdin, stdout, stderr = client.exec_command(com)

print "ssh succuessful. Closing connection"
stdout=stdout.readlines()
client.close()
print "Connection closed"

print stdout
print com
for line in stdout:
    output=output+line
if output!="":
    print output
else:
    print "There was no output for this command"


 类似资料:
  • 我正在学习Sedgwick(普林斯顿大学)的算法1课程,试图从标准输入中读取一个整数,它表示将要输入的整数对的数量,然后从标准输入中读取一个整数对的列表。 例如: 视频中给出的代码是这样的: 问题: > 中的代码是stdin.readint()实际的java还是伪代码?

  • 我试图在我的网页中使用PHP从远程机器中的shell获得结果。我用了这些台词: 我试图得到结果在我的网页在windows机器和libssh2已经包含在easyphp. 有什么想法吗?

  • 问题内容: 我遇到了一个困扰我几天的问题。我在Python 2.7.10中使用了Paramiko模块,我想向Brocade路由器发出多个命令,但仅返回给定命令之一的输出,如下所示: 如果要打印完整的输出,它将包含发布到路由器的所有内容,但是我只想查看show命令的输出。 谁能解决这个问题? 我想问的最后一件事。我想过滤变量并检查是否出现诸如“ up”或“ down”之类的字符串,但是由于输出中的所

  • 问题内容: 当我尝试去做 我得到一个空的输出。 预期输出为: 问题答案: 如果没有输出,通常是因为命令无法启动。 阅读()以检查是否有任何错误。

  • 我最近想出了如何在汇编中写入 stdout,但现在无法从 stdin 中读取,并将我读取的内容输出回 stdout。这是我到目前为止的代码: 我很确定我看错了。我很确定和的行为没有达到预期(如果我将 替换为 次),这是导致我的问题的原因(当我输入输入并点击return时,它什么也不显示)。 我已经摸索了一段时间了,希望能得到任何帮助。(我这么做只是为了了解这不是家庭作业)。 我的问题本质上是我做错

  • 本文向大家介绍使用paramiko远程执行命令、下发文件的实例,包括了使用paramiko远程执行命令、下发文件的实例的使用技巧和注意事项,需要的朋友参考一下 写部署脚本时,难免涉及到一些远程执行命令或者传输文件。 之前一直使用sh库,调用sh.ssh远程执行一些命令,sh.scp传输文件,但是实际使用中还是比较麻烦的,光是模拟用户登陆这一点,还需要单独定义方法模拟输入。 感受一下: 来自官方文档