Проблема с определением функции, которая может выполнять методы объекта и автономные функции

Если вы можете, вызов exec_command() предоставляет более простой механизм для вызова команды. Я видел, что коммутаторы Cisco резко отключают подключения, которые пытаются использовать exec_command(), поэтому их нельзя использовать с устройствами Brocade.

Если вы должны пойти по маршруту invoke_shell(), обязательно очистите все ожидающие выходные данные после подключения и после send('terminal length 0\n'), проверяя recv_ready() перед вызовом recv(), чтобы избежать блокировки при чтении данных, которые, возможно, никогда не были получены. Поскольку вы контролируете интерактивную оболочку, могут потребоваться вызовы sleep(), чтобы дать серверу достаточное время для обработки и отправки данных, или, возможно, потребуется опросить строку вывода, чтобы подтвердить, что ваша последняя команда завершена путем распознавания строки приглашения оболочки .

-1
задан Sielan 28 March 2019 в 21:12
поделиться