GNU/Linux >> Tutoriels Linux >  >> Linux

Netcat ne se termine pas lorsque Stdin se ferme ?

J'essaie d'envoyer un message via netcat . Après avoir envoyé le message, netcat doit se terminer.

J'ai essayé ce qui suit :

cat tsmmessage.bin | nc -u localhost 4300
nc -u localhost 4300 < message.bin

Le -q l'option indique :

-q secondes

après EOF sur stdin, attendez le nombre de secondes spécifié, puis quittez. Si les secondes sont négatives, attendez indéfiniment.

Mais

nc -q0 -u localhost 4300 < message.bin

ne fonctionne pas non plus.

Qu'est-ce que je rate ?

Réponse acceptée :

En supposant qu'après l'envoi de la connexion EOF, la connexion restera inactive, vous pouvez utiliser -w timeout option, qui fonctionne pour timeout étant égal à zéro (contrairement au stupide -q option…)

cat tsmmessage.bin | nc -u localhost 4300 -w0

Linux
  1. Vous obtenez le message "introuvable" lors de l'exécution d'un binaire 32 bits sur un système 64 bits ?

  2. /usr/bin Vs /usr/local/bin Sous Linux ?

  3. Linux - Obtenir les capacités du lecteur de CD/DVD lorsque les appareils Wodim ne fonctionnent pas ?

  4. Comment terminer à distance appelé "tail -f" lorsque la connexion est fermée ?

  5. Comment exécuter un script à la fin de la session xfce

Quand reçoit-on le message d'erreur "jobs :Not Found" ?

Échec du message SOAP lors de la création du domaine

Quand dois-je utiliser #!/bin/bash et quand #!/bin/sh ?

Examen de plusieurs ports lors de l'exécution de NetCat (nc)

Différence entre /bin et /usr/bin

#!/bin/sh vs #!/bin/bash pour une portabilité maximale