IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Programmation et administration système Perl Discussion :

Demande de confirmation après commande Switch en telnet


Sujet :

Programmation et administration système Perl

  1. #1
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2011
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Avril 2011
    Messages : 6
    Points : 4
    Points
    4
    Par défaut Demande de confirmation après commande Switch en telnet
    Bonjour,

    je souhaite réaliser la remise a zéro des compteurs d'erreurs d'un Switch CISCO 3750.
    J'ai produit le code suivant:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    #!\\usr\\Perl\\bin
    use strict; 
    use warnings;
    use Net::Telnet::Cisco; 
     
    #---- Declaration des variables ----#
    my $cmdInitiale = 'clear counters FastEthernet 1/0/';
    my $cmd = '';
    my $raz = '';
    my $IP_Switch = 'xxx.xxx.xxx.xxx';
    my $login = 'user';
    my $mdp = 'pass';
     
    # Ouverture de la connexion telnet sur le Switch correspondant
    my $session = Net::Telnet::Cisco->new(Host => $IP_Switch, Prompt => '/.*\#/');
    $session->login(Name => $login, Password => $mdp, Prompt=>'/\#/');
     
    # Boucle pour réinitialiser chacun des ports
    for (my $j = 1; $j <= 24; $j++)
    {
    	$cmd = $cmdInitiale.$j; # Attribution du port
    	$raz = 'Remise a zero fa1/0/'.$j.' effectuee';
     
    	# Traitement de la commande
    	if ($session->cmd(String => $cmd, Prompt => '/]/'))
    	{
    		#Ouverture/creation du fichier
    		open (FSOR, '>> RemiseAzero.txt') or die "Impossible d'ouvrir le fichier : $!\n";
    		print FSOR $raz, "\n"; # Permet de voir les commandes réalisées et garder une trace
    		close FSOR;
    	}
    }
     
    __END__
    j'utilise la commande "clear counter FastEthernet 1/ numéro de port".
    Cependant, cette commande nécessite une confirmation et je ne vois pas comment faire autrement qu'un prompt...

    Après exécution de mon code, j'obtiens 3 passages dans la boucle mais une erreur apparait:
    Last command and router error:
    Switch_3750#clear counters FastEthernet 1/0/3
    ....................^
    % Invalid input detected at '^' marker.
    Je ne comprends pas pourquoi l'erreur ne se produit pas au tout début et comment cela peut bloquer après plusieurs passages dans la boucle.

    Je vous remercie par avance,

    Maykin

  2. #2
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2011
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Avril 2011
    Messages : 6
    Points : 4
    Points
    4
    Par défaut
    J'ai trouvé une solution mais je ne pense pas que ce soit la plus optimale...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    $session->print($cmd);
    $session->waitfor('/\]/'); # Attente de la demande de confirmation
    $session->print("confirm"); # Confirmation
    Si des personnes ont d'autres idées qui seraient mieux je suis preneur...

    Maykin

  3. #3
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2011
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Avril 2011
    Messages : 6
    Points : 4
    Points
    4
    Par défaut
    J'ai trouvé une solution
    Bon en fait en essayant sur un autre Switch qui lui avait des erreurs je me suis rendu compte que je faisais le bon nombre de boucles mais que les commandes ne sont pas exécutées...

    Quelqu'un aurait-il une idée?

  4. #4
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2011
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Avril 2011
    Messages : 6
    Points : 4
    Points
    4
    Par défaut
    Bon en fait c'est bon cette fois-ci et pour de bon...

    Il suffisait d'utiliser le code suivant:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    $session->cmd(String => $cmd, Prompt => '/\]/');
    $session->print("");
    Pour les gens qui se retrouveraient dans cette situation il faut bien regarder quelle action est attendue pour la confirmation. Dans mon cas, seul la validation par la touche "Entrée" permettait de rendre la commande active.
    Dans le cas contraire, il n'y avais aucune erreur mais rien ne se passait...

    J'espère que ce post pourra servir à quelqu'un...^^

    Maykin

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. recuperation apres commande telnet
    Par eozenn dans le forum VBScript
    Réponses: 0
    Dernier message: 21/04/2008, 10h47
  2. supprimer aprés une demande de confirmation
    Par mademoizel dans le forum ASP
    Réponses: 33
    Dernier message: 10/03/2007, 11h49
  3. Réponses: 10
    Dernier message: 24/05/2005, 16h00
  4. [Jboss][EJB]Demande de confirmation sur la structure.
    Par swirtel dans le forum Wildfly/JBoss
    Réponses: 2
    Dernier message: 17/02/2005, 12h30
  5. [Kylix] Demande de confirmation Kylix Delphi
    Par mailstef dans le forum EDI
    Réponses: 3
    Dernier message: 21/10/2002, 10h17

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo