VBscript: Copie du résultat d'une commande

Résolu/Fermé
valentin2703 Messages postés 180 Date d'inscription dimanche 30 janvier 2011 Statut Membre Dernière intervention 30 septembre 2012 - Modifié par brupala le 29/03/2011 à 17:41
valentin2703 Messages postés 180 Date d'inscription dimanche 30 janvier 2011 Statut Membre Dernière intervention 30 septembre 2012 - 5 avril 2011 à 09:18
Bonjour,

Je cherche depuis pas mal de temps à copier le résultat d'une commande Cisco dans un fichier texte.
Par éxemple, je voudrait le résultat de la commande : sh int gi1/1 dans un fichier texte nommer test.txt
Merci de toute l'aide que vous pourrez m'apporter =)


4 réponses

dna.factory Messages postés 24970 Date d'inscription mercredi 18 avril 2007 Statut Modérateur Dernière intervention 2 mai 2024 1 609
Modifié par dna.factory le 29/03/2011 à 13:54
t'a essayé de rajouter [espace]1>test.txt à la fin de ta commande ?
(c'est du sco unix, mais je pense que c'est plus ou moins standard )
Stop failing the turing test !
0
valentin2703 Messages postés 180 Date d'inscription dimanche 30 janvier 2011 Statut Membre Dernière intervention 30 septembre 2012 9
29 mars 2011 à 13:57
ça ne marche pas :s Commande non reconnu par cisco
0
brupala Messages postés 109493 Date d'inscription lundi 16 juillet 2001 Statut Membre Dernière intervention 2 mai 2024 13 627
29 mars 2011 à 14:49
Salut,
par quel logiciel accèdes tu ?
en console, telnet ou ssh ?
en principe, il suffit d'éditer le buffer d'écran (ascenseur vers le haut) de sélectionner le texte avec la souris, de le copier et de le coller dans le fichier texte.
0
valentin2703 Messages postés 180 Date d'inscription dimanche 30 janvier 2011 Statut Membre Dernière intervention 30 septembre 2012 9
29 mars 2011 à 14:59
J'utilise le telnet. Je ne peut pas me permettre de faire un copier coller avec la souris, le but est de récolter les données de cette commande et de les exploiter en créant un logiciel
0
brupala Messages postés 109493 Date d'inscription lundi 16 juillet 2001 Statut Membre Dernière intervention 2 mai 2024 13 627
Modifié par brupala le 29/03/2011 à 15:18
Ah OK,
tu veux faire ça par un script,
ça va être plus compliqué il n'est pas facile de passer des paramètres à telnet via un script.
il me semble que j'ai vu une discussion sur une version de putty qui permettait ça, mais il faudrait faire des recherches.
tu utilises le telnet de windows ?
un logiciel de communication hautement scriptable comme procomm devrait permettre ça, si tu arrives à le trouver, mais il en existe d'autres (teraterm) , il faut voir.
0
valentin2703 Messages postés 180 Date d'inscription dimanche 30 janvier 2011 Statut Membre Dernière intervention 30 septembre 2012 9
29 mars 2011 à 15:10
Ouai, j'utilise windows. J'ai déja fait un petit script en Visual basic permettant de se connecter au telnet.

Fichier Connexion.bat :

start putty.exe -telnet 10.215.74.161
cscript script.vbs

Fichier script.vbs :

set sh=WScript.CreateObject("WScript.Shell")
WScript.Sleep 100
sh.SendKeys "USER"
sh.SendKeys "~"
WScript.Sleep 200
sh.SendKeys "MDP"
sh.SendKeys "~"
WScript.Sleep 300
sh.SendKeys "COMMANDE CISCO"
sh.SendKeys "~"
WScript.Sleep 400
sh.SendKeys "COMMANDE CISCO"
sh.SendKeys "~"
0
brupala Messages postés 109493 Date d'inscription lundi 16 juillet 2001 Statut Membre Dernière intervention 2 mai 2024 13 627
29 mars 2011 à 17:40
si tu avais commencé par là: nous dire que tu voulais faire ça en VB ....
tu dois pouvoir rediriger la sortie de la commande telnet vers un fichier avec ton VB alors ...
Mais ce n'est plus le domaine du forum réseau, c'est de la programmation.
je redirige aussi ta question là bas.
0
valentin2703 Messages postés 180 Date d'inscription dimanche 30 janvier 2011 Statut Membre Dernière intervention 30 septembre 2012 9
30 mars 2011 à 08:59
Merci ^^
0
valentin2703 Messages postés 180 Date d'inscription dimanche 30 janvier 2011 Statut Membre Dernière intervention 30 septembre 2012 9
30 mars 2011 à 09:50
J'ai trouver la commande permettant de copier le résultat de la commande "sh int gi1/1" en utilisant un serveur tftp :
sh int gi1/1 | tee tftp://ADRESSEIP/TEXTE.txt

Elle marche très bien quand je la tape directement dans le switch cisco, par contre quand je la met dans le fichier .vbs le pipe n'est pas pris en compte au lancement du programme :
sh.SendKeys "sh int gi1/1 | tee tftp://ADRESSEIP/TEXTE.txt"
Le pipe disparait au lancement du script, y a t'il une façons d'écrire le pipe en VBS ?
Merci de vos réponses.
0
valentin2703 Messages postés 180 Date d'inscription dimanche 30 janvier 2011 Statut Membre Dernière intervention 30 septembre 2012 9
30 mars 2011 à 13:59
Personne ? :P
0
dna.factory Messages postés 24970 Date d'inscription mercredi 18 avril 2007 Statut Modérateur Dernière intervention 2 mai 2024 1 609
30 mars 2011 à 16:06
bah le vb je gere pas, mais à mon avis, doit y'avoir moyen d'échaper le caractère, avec un / ou un '
0
valentin2703 Messages postés 180 Date d'inscription dimanche 30 janvier 2011 Statut Membre Dernière intervention 30 septembre 2012 9
5 avril 2011 à 09:18
Bonjour,

J'ai trouver la solution il y a quelques jours, si sa interesse quelqu'un, j'ai directement copié le résultat de la commande telnet dans un fichier texte :

sh.SendKeys "telnet @IP -f Chemin\fic.txt"
0