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 :

Script pour le logiciel PuTTY [Batch]


Sujet :

Scripts/Batch

  1. #1
    Membre averti
    Homme Profil pro
    technicien d'etude et recherche
    Inscrit en
    Mars 2015
    Messages
    22
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : technicien d'etude et recherche

    Informations forums :
    Inscription : Mars 2015
    Messages : 22
    Par défaut Script pour le logiciel PuTTY
    Bonjour a tous ,

    Je viens dans vers vous car je n'ai pas trouver mon bonheur via la fonction de recherche.

    Ma problématique :

    J'ai un appareil avec lequel je peux communiquer a l'aide d'un Hyper terminal et d'un port RS 232.
    J'ai le logiciel Putty.
    Avec Putty j'arrive a écrire la commande qui demande de relever les données.


    Maintenant j'aimerai creer un script en .bat qui :

    _ lance PuTTY et me connecte a mon appareil : start /w putty.exe -load "MKS 946" ( OK)
    _ puis je souhaiterai que le script exécute la commande : "@253PRZ?;FF" dans PuTTY
    _ qu'il répète l'action toutes les secondes pendant un temps donné.
    _ et finalement qu'il copie toutes les données dans un fichier .txt ou .csv ou .excell.

    Je m 'y connais pas du tout en script .bat , je fais habituellement des macros VBA sur Excell.

    Si quelqu'un peut m'aider sur cette problématique, merci d'avance

    Pascal,

  2. #2
    Membre averti
    Homme Profil pro
    technicien d'etude et recherche
    Inscrit en
    Mars 2015
    Messages
    22
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : technicien d'etude et recherche

    Informations forums :
    Inscription : Mars 2015
    Messages : 22
    Par défaut
    Je me permet décrire un petit message pour dire que cette question est toujours d'actualité et vous souhaiter mes meilleurs vœux a tous.

  3. #3
    Expert confirmé

    Homme Profil pro
    Responsable déploiement (SCCM, InTune, GPO)
    Inscrit en
    Juillet 2014
    Messages
    3 218
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Responsable déploiement (SCCM, InTune, GPO)
    Secteur : Transports

    Informations forums :
    Inscription : Juillet 2014
    Messages : 3 218

  4. #4
    Membre averti
    Homme Profil pro
    technicien d'etude et recherche
    Inscrit en
    Mars 2015
    Messages
    22
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : technicien d'etude et recherche

    Informations forums :
    Inscription : Mars 2015
    Messages : 22
    Par défaut
    Bonjour Ericlm128 ,

    Merci pour ta réponse après avoir essayé de comprendre le script posté sur ton lien. je n'arrive pas a reproduire et comprendre ce qu'il a fait. Je n'arrive pas a ouvrir PuTTY avec la commande

    Code PowerShell : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Set WshShell = WScript.CreateObject("WScript.Shell")
    Return = WshShell.Run("putty -load MKS 946",2 )

    Il y a bien un message d'erreur qui apparait mais reste afficher mois d'une seconde a l’écran et je n'arrive pas a lire ce qu'il y ait écrit. Faut il activé certaine fonction dans Windows ?

    Merci d'avance et bonne année

  5. #5
    Membre averti
    Homme Profil pro
    technicien d'etude et recherche
    Inscrit en
    Mars 2015
    Messages
    22
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : technicien d'etude et recherche

    Informations forums :
    Inscription : Mars 2015
    Messages : 22
    Par défaut Changement de strategie
    Re, bonjour en fouillant sur le net , j'ai trouvé une solution avec l'utilisation d'autohotkhey ,


    Code Autohotkey : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
     IfWinNotExist, COM5 - PuTTY
     {
     Run "C:\PuTTY\putty.exe" -load MKS
     sleep,3000
    }
    
    ; Format Time Stamp
    FormatTime, TimeString,,yyyy-MM-dd HH-mm-ss
    
    ; Record Values
    ControlSend, , {enter}, COM5 - PuTTY
    ControlSend, , %TimeString%, COM5 - PuTTY
    ControlSend, , @253PR3?;FF, COM5 - PuTTY
    ControlSend, , {enter}, COM5 - PuTTY
    sleep,1000

    Donc les etapes :
    - Lancer putty avec la bonne session
    - Inserer la commande "@253PR3?;FF"
    fonctionnent même si pour une raison étrange je dois lance le .ahk 2 fois.

    Je travail maintenant sur le lancement,un nombre de fois donné de suite, de ce code a l'aide d'un autre AHK qui lance celui-ci plusieurs fois.

    Code autohotKey : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    run C:\Users\PL732945\Desktop\Lecture donné MKS.ahk
    sleep,2000 
    run C:\Users\PL732945\Desktop\Lecture donné MKS.ahk
    sleep,2000 
    run C:\Users\PL732945\Desktop\Lecture donné MKS.ahk
    sleep,2000 
    run C:\Users\PL732945\Desktop\Lecture donné MKS.ahk
    sleep,2000 
    run C:\Users\PL732945\Desktop\Lecture donné MKS.ahk
    sleep,2000 
    run C:\Users\PL732945\Desktop\Lecture donné MKS.ahk

    Et pour celui-ci les commandes ne se copie pas correctement au debut :/

    Nom : CaptureMKS.JPG
Affichages : 1500
Taille : 38,9 Ko

    si je Relance la Macro une deuxième fois sans fermer Putty ,pas de problème. Ou si je lance d'abord Putty et que je lance la macro pas de soucis non plus.
    Avez vous une idée de ce qui peux causer cela ?

    Merci d'avance.

  6. #6
    Membre averti
    Homme Profil pro
    technicien d'etude et recherche
    Inscrit en
    Mars 2015
    Messages
    22
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : technicien d'etude et recherche

    Informations forums :
    Inscription : Mars 2015
    Messages : 22
    Par défaut
    Après de nouveau test , j'ai remarqué que c’était des que la fenêtre de putty était active que j'avais des bug. a partir du moment ou je clique en dehors de la fenêtre de putty tout fonctione

    Voici le nouveau code

    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
    #NoEnv  ; Recommended for performance and compatibility with future AutoHotkey releases.
    ; #Warn  ; Enable warnings to assist with detecting common errors.
    SendMode Input  ; Recommended for new scripts due to its superior speed and reliability.
    SetWorkingDir %A_ScriptDir%  ; Ensures a consistent starting directory.
    
     
     IfWinNotExist, COM5 - PuTTY
     {
     Run "C:\PuTTY\putty.exe" -load MKS
     sleep,3000
    }
    
    ; Format Time Stamp
    FormatTime, TimeString,,yyyy-MM-dd HH-mm-ss
    ControlSend, , %TimeString%, COM5 - PuTTY
    FormatTime, TimeString,,HH-mm-ss
    loop, 100
    {
    ; Record Oasis Values
    ControlSend, , {enter}, COM5 - PuTTY
    ControlSend, , @253PR3?;FF, COM5 - PuTTY
    ControlSend, , {enter}, COM5 - PuTTY
    sleep,1000
    ControlSend, , /, COM5 - PuTTY
    ControlSend, , %TimeString%, COM5 - PuTTY
    sleep,1000
    }
    Je penser avec la fonction

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ControlSend, , %TimeString%, COM5 - PuTTY
    Pouvoir avoir le temps a chaque loop mais non il semble me donner le temps au lancement de la macro , (ce n'ai qu'un petit désagrément mineur mais si il existe des solution pour avoir le temps de l'ordinateur affiché je suis preneur

    Il ne me reste plus qu'à automatiser la copie des donnée affiché dans Putty vers une fichier CSV (ou autre utilisable dans Windows)

    PS : Au modérateurs passant par ici si vous estimez que ce sujet n'a plus sa place dans la partie BATCH a cause du changement de stratégie vers Authokey, N’hésitez pas a me prévenir et / ou déplacez ce sujet vers une partie plus adapté, merci d'avance

    edit 1 : Probleme de timer non mis a jour regler en deplaçant la ligne
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    FormatTime, TimeString,,HH-mm-ss
    dans la loop.
    Nouveau code :
    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
     IfWinNotExist, COM5 - PuTTY
     {
     Run "C:\PuTTY\putty.exe" -load MKS
     sleep,3000
    }
    
    ; Format Time Stamp
    FormatTime, TimeString,,yyyy-MM-dd HH-mm-ss
    ControlSend, , %TimeString%, COM5 - PuTTY
    
    loop, 100
    {
    ; Record Oasis Values
    ControlSend, , {enter}, COM5 - PuTTY
    ControlSend, , @253PR3?;FF, COM5 - PuTTY
    ControlSend, , {enter}, COM5 - PuTTY
    sleep,1000
    ControlSend, , /, COM5 - PuTTY
    FormatTime, TimeString,,HH-mm-ss
    ControlSend, , %TimeString%, COM5 - PuTTY
    sleep,1000
    }

  7. #7
    Membre averti
    Homme Profil pro
    technicien d'etude et recherche
    Inscrit en
    Mars 2015
    Messages
    22
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : technicien d'etude et recherche

    Informations forums :
    Inscription : Mars 2015
    Messages : 22
    Par défaut Une solution :)
    Finalement j'ai trouvé le code autohotkhey afin de copier le contenu de putty.

    Et voici ce que donne le code final (peut être ajouterai-je certaine explication plus tard)

    Code AutoHotKey : 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
    35
    36
    37
    38
    39
    #NoEnv  ; Recommended for performance and compatibility with future AutoHotkey releases.
    ; #Warn  ; Enable warnings to assist with detecting common errors.
    SendMode Input  ; Recommended for new scripts due to its superior speed and reliability.
    SetWorkingDir %A_ScriptDir%  ; Ensures a consistent starting directory.
    
     
     IfWinNotExist, COM5 - PuTTY
     {
     Run "C:\PuTTY\putty.exe" -load MKS
     sleep,3000
    }
    
    ; Format Time Stamp
    FormatTime, TimeString,,yyyy-MM-dd HH-mm-ss
    ControlSend, , %TimeString%, COM5 - PuTTY
    
    loop, 5
    {
    ; Record Oasis Values
    ControlSend, , {enter}, COM5 - PuTTY
    ControlSend, , @253PR3?;FF, COM5 - PuTTY
    ControlSend, , {enter}, COM5 - PuTTY
    sleep,250
    ControlSend, , /, COM5 - PuTTY
    FormatTime, TimeString,,HH-mm-ss
    ControlSend, , %TimeString%, COM5 - PuTTY
    sleep,750
    }
    
    ; Copier l'ntegralité de la fenetre putty
    SetTitleMatchMode, 2
    ClipBoard := "" ; vider le clipboard	
    PostMessage, 0x112, 0x170, 0,, PuTTY 
    ClipWait
    ;MsgBox % Clipboard
    
    ; Creer un nouveau fichier
    FormatTime, TimeString,,yyyy-MM-dd HH-mm   ;editer le format de la date pour nommer le fichier
    FileAppend, %clipboard%, %A_WorkingDir%\Suivi Debit_%TimeString%.txt ; Creer un fichier texte avec le contenue du clipboard

    Il me reste à créer une macro VBA qui va extraire les infos du document texte et supprimer les motions inutiles et remettre en forme l’intégralité des donnés mais pour l'instant l'objectif est atteint.
    Je reste preneur de tout conseil pouvant améliorer la qualité de mon code.

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

Discussions similaires

  1. Réponses: 1
    Dernier message: 29/08/2015, 16h18
  2. JBuilder ou eclipse pour developpement logiciel ?
    Par noOneIsInnocent dans le forum Eclipse
    Réponses: 15
    Dernier message: 12/04/2004, 14h52
  3. [langage] cherche script pour formater une chaine
    Par MASSAKA dans le forum Langage
    Réponses: 7
    Dernier message: 12/11/2003, 12h18
  4. [pgaccess] Script pour formulaire
    Par garou51 dans le forum PostgreSQL
    Réponses: 2
    Dernier message: 13/06/2003, 08h30
  5. Script pour envoyer des info a mysql
    Par rhum1 dans le forum Linux
    Réponses: 6
    Dernier message: 15/04/2003, 16h19

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