Возможно ли отправлять команды коммутатору через Bash?
Есть сотня коммутаторов Huawei, хочется автоматизировать рутинную задачу по закрытию портов, которые давно не использовались. Пытаюсь на баше состряпать скрипт, в качестве отправки использую утилиту sshpass, проблема в том, что передаваемый аргумент содержит команды, каждая новая например
1. system-view
2. disp int brief
с новой строки, но коммутатору улетает всё одной строкой, есть какое-нибудь решение проблемы? с expect не подружился..
Drno, не умеет.. в инете встречал варианты где просто с новой строки команды в одном файле и файл подкидывается - у меня не проканало, всё-равно в одну строку передаёт..
На баше автоматизация общения с железками неплохо делалась с помощью утилиты expect
либо гуглить API от этих устройств - вдруг есть, и тогда можно уже курлом либо python + requests
У меня есть куча цисок, snr, eltex и для управления ими используется libnet-telnet-perl (libnet-telnet-cisco-perl).
Можно делать что угодно. Подозреваю, что существует подобная библиотека и для питона.
А то, что у Вас все улетает одной строкой, то, возможно, каждую отдельную строку надо экранировать \n.
А в каком именно плане дружба с expect не срослась?
Но, по-моему, рутинная задача по закрытию портов проще всего делается по snmp.
Да проблема была с передачей пароля который содержал $, в общем-то expect'ом и сделал, других способов передавать команды имитируя Enter не удалось найти.