Puedo usar netcat
Para transferir archivos entre dos computadoras.
# Server
nc -l -p 8080 < file
# client
nc 192.168.1.101 8080 > file
Puedo usar netcat
para descargar una URL de internet como wget
?
Suponiendo que te refieres a una URL HTTP regular, es posible pero requiere que escribas manualmente la solicitud HTTP. Si la URL requiere un HTTP POST con un formulario codificado con url o busca encabezados específicos, esto puede ser bastante engorroso.
Deberá proporcionar una solicitud HTTP válida al stdin de netcat. La idea general es:
Ejecutar el comando nc example.com 80
netcat comenzará a leer desde stdin
y todo lo que escriba o pegue en el terminal se enviará a través de la red al servidor remoto en el puerto que seleccionó (80 es el puerto HTTP predeterminado).
Ahora necesitas escribir o pegar una solicitud HTTP, como:
GET / HTTP/1.1
Host: example.com
User-Agent: netcat
También necesitará algunas líneas nuevas al final, así que presione enter varias veces hasta que obtenga la respuesta HTTP. Entonces tendrás que analizar manualmente la respuesta.
netcat funciona en la capa TCP, por lo que cualquier protocolo basado en HTTP se puede usar técnicamente con netcat, pero para los protocolos que no se adaptan a la entrada humana (como ssh y https), puede ser difícil de usar si no lo está. scripting desde un programa. Y si ESTÁ escribiendo un programa, ¿por qué no está usando sockets TCP normales?
Las limitaciones de netcat para este propósito son las siguientes:
# create a request file
$ cat req
GET / HTTP/1.1
Host: superuser.com
User-Agent: Mozilla/5.0
# send request to get response
$ nc superuser.com 80 <req >res