Script expect pour récupérer la configuration
Yenku
-
Yenku -
Yenku -
Bonjour, Afin de récupérer la configuration de mes switch j'ai créé un script "expect" qui effectue une connexion telnet sur mon switch et envoie la configuration (running-config) vers le serveur tftp, ceci fonctionne le seul souci que j'ai rencontré c'est que je veux récupérer dans la variable 'ip' les adresses ip de mes switch qui ce trouve dans le fichier txt 'ip_switch.txt', malheureusement je ne parvient pas à le faire.
Voici le script:
#! /usr/bin/expect
spawn telnet $ip
expect "Username:"
send "user\r"
expect "Password:"
send "motdepasse\r"
expect "#"
send "copy running-config tftp\r"
expect "Address or name of remote host"
send "xxx.xxx.xxx.xxx\r"
expect "Destination filename"
send "$ip.txt\r"
expect "#"
send "exit\r"
expect "closed"
J'espère que quelqu'un pourras m'aider, merci par avance.
Voici le script:
#! /usr/bin/expect
spawn telnet $ip
expect "Username:"
send "user\r"
expect "Password:"
send "motdepasse\r"
expect "#"
send "copy running-config tftp\r"
expect "Address or name of remote host"
send "xxx.xxx.xxx.xxx\r"
expect "Destination filename"
send "$ip.txt\r"
expect "#"
send "exit\r"
expect "closed"
J'espère que quelqu'un pourras m'aider, merci par avance.
A voir également:
- Script expect pour récupérer la configuration
- Ethernet n'a pas de configuration ip valide - Guide
- Recuperer message whatsapp supprimé - Guide
- Panneau de configuration - Guide
- Script vidéo youtube - Guide
- Retablir configuration usine chromecast - Guide
6 réponses
Salut,
Il faut passer tON IP en argument au script et déclarer ensuite ta variable dans expect de cette façon :
;-))
Il faut passer tON IP en argument au script et déclarer ensuite ta variable dans expect de cette façon :
#!/usr/bin/expect -f set IP [lindex $argv 0] spawn telnet $IP expect "Username:" [...]
;-))
Salut zipe31,
Merci pour ta réponse, étant novice en expect je ne comprend pas en quoi le fait de passer IP en argument me permet de récupérer mes adresses ip contenue dans mon fichier txt afin d'utiliser une boucle (un peut comme en shell avec le "for ip in $('cat /cisco/ip_switch.txt')") pour que mes lignes expect s'exécutent pour toutes mes adresses ip contenue dans le fichier texte.
Merci pour ta réponse, étant novice en expect je ne comprend pas en quoi le fait de passer IP en argument me permet de récupérer mes adresses ip contenue dans mon fichier txt afin d'utiliser une boucle (un peut comme en shell avec le "for ip in $('cat /cisco/ip_switch.txt')") pour que mes lignes expect s'exécutent pour toutes mes adresses ip contenue dans le fichier texte.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question