Conexão múltipla de telnet em Esperar loop

1

Preciso ter o número de série de alguns dispositivos listados em um arquivo como este:

device_id,ip_address
 BIOTERIO, 148.000.00.189
 N7K-LAN(JAF1651ANDL), 148.000.0.192
 LAB_PESADO, 148.000.000.130
 Arquitectura_Salones, 148.000.000.61
 CIVIL_253, 148.000.000.253 
 Arquitectura, 148.000.000.253
 ING_CIVIL, 148.000.000.251
 ING_CIVIL_DIR, 148.000.0.188
 Ingenieria_Posgrado, 148.000.000.253
 Biblio_Barragan, 148.000.000.61
 Electronica_Edif_3, 148.000.000.253

Eu não sei como fazer o loop, mas eu preciso que ele se conecte via telnet a cada dispositivo, com um certo nome de usuário e passe, então execute este comando cisco " show version " e salve o número de série no mesmo arquivo (se possível).

Alguma ideia de como posso fazer isso?

    
por Cesar Alejandro Villegas Yepez 09.03.2017 / 19:10

1 resposta

0

#!/usr/bin/env expect

# open first argument to program...
set fd [open [lindex $argv 0]]

# for each line using that file handle...
while {[gets $fd line] >= 0} {
    # split on , and select the last one...
    set lastcolumn [lindex [split $line ","] end]
    # whoops there's some whitespace so clear that...
    set ip [string trim $lastcolumn " "]
    puts ">$ip<"
}
    
por 09.03.2017 / 19:34

Tags