打印 net-snmp getbulk 结果,每个索引处都有换行符



我有以下Python代码:

#!/usr/bin/python
import netsnmp
session = netsnmp.Session(DestHost='_destination address_', Version=2, Community='_string_')
vars = netsnmp.VarList(netsnmp.Varbind('ifIndex',), netsnmp.Varbind('ifDescr',), netsnmp.Varbind('ifOperStatus',))
print(session.getbulk(0, 48, vars))

session.getbulk的结果如下:

('1', 'Vlan1', '1', '2', 'Vlan2', '2', '10101', 'GigabitEthernet0/1', '2', '10102',
'GigabitEthernet0/2', '2', '10103', 'GigabitEthernet0/3', '2', '10104', 
'GigabitEthernet0/4', '2', '10105', 'GigabitEthernet0/5', '2', '10106', 
'GigabitEthernet0/6', '2', '10107', 'GigabitEthernet0/7', '2', '10108', 
'GigabitEthernet0/8', '2', '10109', 'GigabitEthernet0/9', '2', '10110', 
'GigabitEthernet0/10', '2', '10111', 'GigabitEthernet0/11', '2', '10112',  
'GigabitEthernet0/12', '2', '10113', 'GigabitEthernet0/13', '1', '10114', 
'GigabitEthernet0/14', '1', '10115', 'GigabitEthernet0/15', '2', '10116', 
'GigabitEthernet0/16', '1', '10117', 'GigabitEthernet0/17', '2')

我想在每个接口的换行符上打印session.getbulk返回的信息。如果我对程序的理解是正确的,我应该为每个接口获取三个值,(ifIndexifDescrifOperStatus )。

就目前而言,结果以单个信息块呈现,我的受众可能很难区分两者。

然而,作为编程的新手,我很难弄清楚如何做到这一点。如果有人愿意为我指出适当的教程或文档,我将不胜感激。

谢谢!

如果我理解正确,我认为这就是你想要的?

result = session.getbulk(0, 48, vars)
for i in range(0, len(result), 3):
    print "ifind: "+result[i]+" ifdesc: "+result[i+1]+" status: "+result[i+2]

最新更新