Estoy usando algo como esto para enviar archivos de una computadora a otra:
Para servir el archivo (en la computadora A):
cat something.zip | nc -l -p 1234
Para recibir el archivo (en la computadora B):
netcat server.ip.here. 1234 > something.zip
Mi pregunta es ... ¿puedo hacer lo contrario? Digamos que tengo un archivo en la computadora B y quiero enviarlo a A, pero no de la manera que escribí arriba, pero al hacer que la computadora que se supone que recibe el archivo (A) sea un servidor 'escucha' y conecte la computadora que está 'enviando' el archivo ( B) al servidor y enviar el archivo? ¿Es posible? Creo que podría ser, pero no estoy seguro de cómo hacerlo.
En caso de que mi explicación anterior esté en mal estado: ¿cómo envío el archivo al 'servidor' en lugar de servir el archivo en el servidor y luego sacarlo de él (como lo hice anteriormente)?
nc
porquescp
es demasiado lento y no es necesario el cifrado, es posible que desee cambiar audpcast
: superuser.com/questions/692294/...Respuestas:
En su servidor (A):
En su "cliente remitente" (B):fuente
< /dev/null
parte?pv
, sugeriría operar el "cliente del servidor"pv soemthing.zip | ...
, ya que eso mostrará el progreso de la lectura del archivo que entra en la tubería.Como nota, si desea conservar también los permisos de archivo, la propiedad y las marcas de tiempo, utilizamos tar con netcat para realizar transferencias de directorios y archivos.
En el sistema receptor:
Desde el sistema de envío:
Espero que ayude.
fuente
Computadora A:
nc -l -p 1234 > filename.txt
Computadora B:
nc server.com 1234 < filename.txt
También debería funcionar;)
fuente
Inicie otra instancia de netcat en la computadora B. Simplemente haga lo que hizo en la computadora A, pero sírvala desde B. Dele al nuevo servidor un nuevo puerto.
fuente