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

Shell et commandes GNU Discussion :

Arret commande netcat


Sujet :

Shell et commandes GNU

  1. #1
    Membre à l'essai
    Arret commande netcat
    bonjour, j'ai un appareil qui difuse en tcp ip en continu une hauteur de cuve a fuel.
    je récupérer l'info dans linux avec netcat 192.168.0.215 1450 . la commande me renvoi 950 (hauteur en cm) sur une nouvelle ligne toutes les secondes., mais pour arréter la commande il faut que je fasse ctrl c.
    il y a t'il un moyen pour le faire dans un script et récupérer une seule fois la valeur et arrété le script ?

    Merci pour vos pistes.

    Cordialement

  2. #2
    Expert éminent
    man netcat ?
    Salut,

    Extrait du man netcat :

    Code :Sélectionner tout -Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
         -N      shutdown(2) the network socket after EOF on the input.  Some servers require this to finish their
                 work.
     
         -q seconds
                 after EOF on stdin, wait the specified number of seconds and then quit. If seconds is negative, wait
                 forever (default).  Specifying a non-negative seconds implies -N.


    $ man woman
    Il n'y a pas de page de manuel pour woman.

  3. #3
    Membre à l'essai
    oui merci pour cette info, mais comme l'appareil source diffuse en continu, il n'y a pas de EOF donc pas de fin !
    c'est pour cela que je cherche une possibilité dans un script de l'arréter après une valeur
    cordialement

  4. #4
    Expert éminent
    Et comme ça ?

    Code :Sélectionner tout -Visualiser dans une fenêtre à part
    1
    2
    3
    4
    netcat 192.168.0.215 1450 &
    pid=$!
    sleep 2
    kill -INT ${pid}
    $ man woman
    Il n'y a pas de page de manuel pour woman.

  5. #5
    Modérateur

    Bonjour,

    on ne peut pas faire un until read ?
    Code :Sélectionner tout -Visualiser dans une fenêtre à part
    1
    2
    3
    until read h < <(netcat xx.xx.xx.xx pp); do sleep 2; done
    pkill netcat
    echo "$h"
    Cette signature n'a pas pu être affichée car elle comporte des erreurs.

  6. #6
    Membre à l'essai
    Super merci pour ton aide ca marche nickel. J'utilise cela dans une box domotique JEEDOM pour récupérer la hauteur d'une cuve a fuel qui a un bus RS485. J'ai ensuite une interface RS485/ip qui renvoi la hauteur sur le bus toutes les 1 s.


    Citation Envoyé par zipe31 Voir le message
    Et comme ça ?

    Code :Sélectionner tout -Visualiser dans une fenêtre à part
    1
    2
    3
    4
    netcat 192.168.0.215 1450 &
    pid=$!
    sleep 2
    kill -INT ${pid}

###raw>template_hook.ano_emploi###