Мне нужно просмотреть и собрать несколько OID с некоторых сетевых принтеров с поддержкой SNMP с помощью сценария BASH, над которым я работал.
Мой запрос:
snmpget -v2c -c public 192.168.0.77
.1.3.6.1.2.1.1.1
.1.3.6.1.2.1.1.2
Мой фактический ответ:
.1.3.6.1.2.1.1.1 = Counter32: 1974
.1.3.6.1.2.1.1.2 = Counter32: 633940
Желаемый ответ:
1974
633940314
(только значения oid)
Я посмотрел и протестировал несколько вариантов, используя ресурс с сайта ниже:
http://www.netsnmp.org/docs/man/snmpcmd.html#lbAF
-Oq
удаляет '=', поэтому работает
snmpget -v2c -c public -Oq 10.15.105.133
.1.3.6.1.2.1.1.1
.1.3.6.1.2.1.1.2
возвращается
.1.3.6.1.2.1.1.1 Counter32: 1974
.1.3.6.1.2.1.1.2 Counter 32: 633940314
поэтому я знаю, что правильно формулирую свою просьбу.
Я беру значения и записываю их в дБ MYSQL, я устанавливаю типы данных в своей схеме рассказа, запрос согласован, поэтому я знаю определение OID, поэтому мне не нужна вся информация, которую я получаю, просто значение самого OID, поэтому я могу записать его в свой дБ, не манипулируя ответом. Вероятно, я могу манипулировать ответом, вытаскивая информацию справа от «:» и записывая значение OID.
Я относительно новичок в SNMP (http://www.net-snmp.org/), но Я не понимаю, почему это не более часто задаваемый вопрос, потому что я везде искал ответ, и этот пост - мое последнее обращение...