forma portátil de finalizar el comando (netcat) después del tiempo de espera

forma portátil de finalizar el comando (netcat) después del tiempo de espera

Tengo una solución usando netcat/ nccomo servicio que escucha entradas, pero el servicio nunca devuelve ninguna entrada al cliente. Algo así:

server$ nc -l 12345

y luego:

client$ echo message | nc server 12345

El truco es que debido a que el servidor nunca envía nada al cliente (incluido ningún EOF), esencialmente porque no sabe cuándo el cliente termina, el cliente netcatnunca finaliza.

Una solución sencilla es hacer que el cliente utilice la -q <secs>opción netcat, pero no todas las implementaciones (por ejemplo, FreeBSD y Mac OSX) netcatincluyen la -qopción.

¿Alguna otra solución alternativa de las mentes brillantes aquí?

información relacionada