snramget通过paramiko失败

时间:2018-03-08 19:43:20

标签: python-2.7 snmp paramiko

当我在bash中使用snmpget命令时,它可以工作,我得到了我想要的输出,但是当我通过paramiko通过python运行它时,它失败了并且没有返回任何内容。

我怀疑它回来了太多信息。

for x in L2Switches:
    ssh.stdin, ssh.stdout, ssh.stderr = ssh.exec_command("snmpget -v2c -c <SNMPPASS> " + x + " HOST-RESOURCES-MIB::ifName | grep Master")
    for line in ssh.stdout:
        print(line)
        if "Master Switch on the internal network" in line:
           print(x + ' is the master switch')
        else:
           pass

我尝试过使用snmpwalk然后返回所有内容并且似乎没有使用'grep'功能。

stderr输出

检查stderr输出我可以看到它正在解析exec_command作为bash行上的两个命令

我已经包含了一个片段,如果您了解SNMP,您会看到它显示了snmp命令的“帮助”,然后尝试单独运行exec命令的第二部分,但是它报告它缺少对象名称

          Missing object name

          for levels 'p1' to 'p2'

          [FS] pri token:    log to file/syslog for level 'pri' and above

          [FS] p1-p2 token:  log to file/syslog for levels 'p1' to 'p2'

          -C APPOPTS        Set various application specific behaviours:

          f:  do not fix errors and retry the request

          bash: line 1: HOST-RESOURCES-MIB::ifName: command not found

0 个答案:

没有答案