2017-01-30 6 views
-2

Я не могу заставить следующий скрипт работать даже в том случае, если логин успешно завершен или когда вход в систему не увенчался успехом.Telnet для нескольких маршрутизаторов cisco с использованием сценария ожидания Python

  1. Какие регулярные выражения можно использовать для принятия всех приведенных ниже подсказок?

    router1>; 
    router3>;  
    router4# 
    
  2. Как я могу использовать регулярное выражение, где я могу ожидать весь текст, прежде чем «глючить» и после того, как «провал» строки, а затем в конце концов я получу > > > "разрешение отказано

Current failed Login: ######## 
User Access Verification 
Username: asdsad 
Password: 
% Authentication failed 
Current Successful Login ########### 
[[email protected] testuserpass]# telnet 192.168.1.31 
Trying 192.168.1.31... 
Connected to 192.168.1.31. 
Escape character is '^]'. 
User Access Verification 
Username: admin 
Password: 
testname> 
testname> 
testname> 
testname> 
testname> 

My Script Ниже ################

Вопрос о Cisco маршрутизаторы телнет входа в систему регулярных выражений

#! /usr/bin/python 

import pexpect 
import getpass 

HOST = "192.168.1.31" 
user = raw_input("Enter your remote account: ") 
password = getpass.getpass() 
child = pexpect.spawn ('telnet '+HOST) 
child.expect ('Username: ') 
child.sendline (user) 
child.expect ('Password: ') 
child.sendline (password) 

//// ######I just can't get below part to work.  
i = child.expect (['*Authentication*', 'Terminal type', '[#\$>] ']) 

if i==0: 
    print('Permission denied on host. Can\'t login') 
    child.kill(0) 
    print child.readline() 
elif i==1: 
    print('Login OK... need to send terminal type.') 
    child.sendline('vt100') 
    child.expect('[#\$] ') 
    print child.readline() 
elif i==2: 
    print('Login OK.') 
    print('Shell command prompt', child.after) 
    print child.readline() 

ответ

1

Я также борется с множеством различных приложений сценариев, но в конце концов нашел PrettyGoodTerminal, который может обрабатывать скрипты гладко. Он специально разработан для сценариев маршрутизаторов Cisco, поэтому вы также можете найти его полезным

Смежные вопросы