besoin d'info [EXPECT] - Divers - Programmation
Marsh Posté le 21-12-2009 à 09:28:57
Si si, y a bien des if/toussa
http://en.wikipedia.org/wiki/Expect
Marsh Posté le 21-12-2009 à 10:27:21
oui mais ce sont des "if" de variable alors que moi je veux un "if" en fonction du résultat de ma commande.
Tu vois ce que je veux dire ?
Par exemple faire si je voulais voir les VLAN autorisés dans un lien trunk :
sh run int f0/1 | incl switchport mode
if "switchport mode trunk"
then "sh run int f0/1 | incl switchport trunk allowed vlan"
else "exit"
Marsh Posté le 21-12-2009 à 11:15:19
Et heuu, tu pourrais pas mettre le contenu du résultat de ta commande dans une variable, avant de le tester ?
Marsh Posté le 21-12-2009 à 13:00:19
tu fais ça comment ?
désolé mais je suis vraiment pas programmeur...
Marsh Posté le 21-12-2009 à 13:17:10
voici ce que j'ai fais mais qui ne marche pas
j'ai enelvé toute la partie authentification qui fonctionne bien.
send "sh run int f0/1 | incl switchport mode\r"
expect {
"switchport mode trunk" {
send "sh run int f0/1 | incl switchport trunk allowed vlan\r"
} \
"switchport mode access" {
close
}
}
une fois qu'il a reçu le résultat de la commande "sh run int f0/1 | incl switchport mode"
il ne fait rien
Marsh Posté le 06-01-2010 à 16:59:55
UP
j'utilise un logiciel qui sait executer des script EXPECT pour faire des requêtes sur des équipements Cisco.
je cherche à faire à voir uniquement le résultat de cette commande :
show interface FastEthernet0/5 | incl FastEthernet
cette commande permet d'obtenir l'état de l'interface
je n'arrive pas à obtenir uniquement le résultat de cette commande qui devrait être du genre :
FastEthernet0/5 is Down, line procol is Down (not connected)
j'ai essayé :
exp_send "show interface FastEthernet0/5 | incl FastEthernet \r"
expect "#"
set output $expect_out(buffer)
puts "output contains '$output'"
mais ça me donne :
show interface FastEthernet0/5 | incl FastEthernet
FastEthernet0/5 is Down, line procol is Down (not connected)
$hostname#
donc il y a trop d'infos dans le résultat.
Si quelqu'un peut m'aider je lui en serai éternellement reconaissant
Merci
Marsh Posté le 18-12-2009 à 17:00:18
salut à tous,
je souhaite développer une "macro" en Expect pour intéroger des équipements Cisco.
En, j'ai un soft qui sait interpreter le langage EXPECT et j'ai besoin d'aller intéroger tout une liste de switchs pour vérifier certains paramêtres.
Par exemple, si le VTP est en mode "transprent" alors afficher la liste des VLAN du switch. si le VTP est en mode client alors je referme et passe au prochain switch.
J'ai bien saisi comment fonctionne l'expect mais je n'ai pas trouvé d'explication sur la syntaxe des "conditions".
Si quelqu'un peut m'aider, je suis preneur.
J'ai déja les commandes à utiliser pour vérifier le mode du VTP.
Merci