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

Scripts/Batch Discussion :

Passer plusieurs commandes à plink [PowerShell]


Sujet :

Scripts/Batch

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Décembre 2009
    Messages
    63
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2009
    Messages : 63
    Points : 57
    Points
    57
    Par défaut Passer plusieurs commandes à plink
    Bonjour,

    Je suis actuellement entrain de développer un petit script qui requête des équipements cisco et traite le résultat.
    Le problème est que je dois attendre un prompt ou autre pour passer une commande.
    Au niveau Linux, pas de problème, j'utilise la commande "expect" et tout ce passe bien.
    Au niveau Powershell, je n'ai pas trouvé d'équivalent, j'utilise donc plink.
    Cependant, je n'arrive pas à lui passer plusieurs commande, je l’exécute comme ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    &cmd.exe /c "plink -ssh Login@IP -pw MDP < plink-commande.txt"
    Cela m’exécute que la première commande du fichier puis ça bloque.

    Si quelqu'un voit comment faire, je suis preneur.
    Merci

  2. #2
    Membre éclairé Avatar de bstevy
    Homme Profil pro
    Solutions Architect
    Inscrit en
    Mai 2009
    Messages
    552
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : Japon

    Informations professionnelles :
    Activité : Solutions Architect
    Secteur : Finance

    Informations forums :
    Inscription : Mai 2009
    Messages : 552
    Points : 870
    Points
    870
    Par défaut
    Sans grande assurance, je suis loin d'être expert, mais c'est pas une histoire comme quoi il faudrait concatener les commandes avec des && entre ?
    je crois que c'est comme ca qu'on passe plusieurs commandes à la suite sous dos.

    Mais peut etre que c'est pas ca et dans ce cas, faudra attendre la réponse de qlq'un qui s'y connait plus.

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Décembre 2009
    Messages
    63
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2009
    Messages : 63
    Points : 57
    Points
    57
    Par défaut
    Merci bstevy pour ta réponse.

    Cependant cela ne marche pas, j'ai l'impression que les commandes sont bien vues étant donnée quelles s'affichent toutes après la connexion ssh.
    Mais dès que la première commande s’exécute et me retourne le résultat, il ne se passe plus rien donc mon script bloque.

  4. #4
    Rédacteur


    Profil pro
    Inscrit en
    Janvier 2003
    Messages
    7 171
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2003
    Messages : 7 171
    Points : 15 060
    Points
    15 060
    Billets dans le blog
    1
    Par défaut
    Salut,
    ta commande fonctionne-t-elle dans une console cmd exécutée depuis l'explorateur de fichier ?

  5. #5
    Membre du Club
    Profil pro
    Inscrit en
    Décembre 2009
    Messages
    63
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2009
    Messages : 63
    Points : 57
    Points
    57
    Par défaut
    Salut,
    Oui elle fonctionne mais j'ai le même résultat, le première commande du fichier s’exécute mais pas les suivantes.

  6. #6
    Rédacteur


    Profil pro
    Inscrit en
    Janvier 2003
    Messages
    7 171
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2003
    Messages : 7 171
    Points : 15 060
    Points
    15 060
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par moman Voir le message
    Salut,
    Oui elle fonctionne mais j'ai le même résultat, le première commande du fichier s’exécute mais pas les suivantes.
    Vérifies avec un éditeur Hexa si tu as bien un CRLF en fin de chaque ligne du fichier texte.
    Pour le moment Powershell ne me semble pas en cause.

  7. #7
    Rédacteur


    Profil pro
    Inscrit en
    Janvier 2003
    Messages
    7 171
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2003
    Messages : 7 171
    Points : 15 060
    Points
    15 060
    Billets dans le blog
    1
    Par défaut
    N'est-ce pas le paramètre -m qui manque à ta ligne de commande ?

  8. #8
    Membre du Club
    Profil pro
    Inscrit en
    Décembre 2009
    Messages
    63
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2009
    Messages : 63
    Points : 57
    Points
    57
    Par défaut
    Merci Laurent pour vos réponses,

    Contenu du fichier texte en hexa :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    0a 73 68 6f 77 20 73 74 61 74 75 73 0a 75 74 69 
    6c 73 20 64 62 72 65 70 6c 69 63 61 74 69 6f 6e 
    20 72 75 6e 74 69 6d 65 73 74 61 74 65 0a 65 78 
    69 74 0a
    On a juste le 0a -> LF en fin de chaque ligne apparemment.
    J'ai modifié en 0d0a mais ça ne change rien au problème.

    Pour ce qui est du -m, c'est encore pire avec c'est pour cela que j'utilise le < .
    Retour avec le -m :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    stty: standard input: Invalid argument
    stty: standard input: Invalid argument
    
    Exception in thread "main" 
    java.lang.NumberFormatException: For input string: ""
        at java.lang.NumberFormatException.forInputString(NumberFormatException.java:48)
        at java.lang.Integer.parseInt(Integer.java:470)
        at java.lang.Integer.parseInt(Integer.java:499)
        at sdMain.initialize(sdMain.java:471)
        at sdMain.main(sdMain.java:646)
    
    stty: 
    standard input: Invalid argument

  9. #9
    Rédacteur


    Profil pro
    Inscrit en
    Janvier 2003
    Messages
    7 171
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2003
    Messages : 7 171
    Points : 15 060
    Points
    15 060
    Billets dans le blog
    1
    Par défaut
    Je ne vois pas ce que je peux faire de plus, à part te conseiller de t'adresser aux développeurs.

  10. #10
    Membre du Club
    Profil pro
    Inscrit en
    Décembre 2009
    Messages
    63
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2009
    Messages : 63
    Points : 57
    Points
    57
    Par défaut
    Merci Laurent d'avoir pris du temps pour m'aider.

    Je vais utiliser provisoirement un serveur passerelle linux pour contourner le problème.

    Je laisse quand même le sujet non résolu, on sait jamais si quelqu'un a une idée.

    Encore merci.

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

Discussions similaires

  1. [Batch] souci pour passer plusieurs commandes avec les outils plink et psftp
    Par Macfplus dans le forum Scripts/Batch
    Réponses: 1
    Dernier message: 09/05/2014, 11h12
  2. Passer plusieurs paramètres à une commande
    Par Xxbz3 dans le forum Windows Presentation Foundation
    Réponses: 2
    Dernier message: 30/12/2010, 12h19
  3. Passer plusieurs commandes avec plink
    Par Toomaaaaa dans le forum Développement
    Réponses: 8
    Dernier message: 20/11/2008, 15h56
  4. Réponses: 2
    Dernier message: 08/11/2007, 15h11
  5. Plusieurs commandes en meme temps
    Par caribou_belle dans le forum Linux
    Réponses: 7
    Dernier message: 18/09/2003, 18h07

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