J'utilise quelque chose comme ça pour envoyer des fichiers d'un ordinateur à un autre:
Pour servir le fichier (sur l'ordinateur A):
cat something.zip | nc -l -p 1234
Pour recevoir le fichier (sur l'ordinateur B):
netcat server.ip.here. 1234 > something.zip
Ma question est ... puis-je faire le contraire? Disons que j'ai un fichier sur l'ordinateur B et que je veux l'envoyer à A mais pas de la façon dont j'ai écrit ci-dessus, mais en faisant en sorte que l'ordinateur qui est censé recevoir le fichier (A) soit «à l'écoute» du serveur et connecte l'ordinateur qui «envoie» le fichier ( B) au serveur et envoyer le fichier? C'est possible? Je pense que c'est possible, mais je ne sais pas comment procéder.
Dans le cas où mon explication ci-dessus est foirée: comment envoyer un fichier au «serveur» au lieu de servir le fichier sur le serveur et de le prendre ensuite (comme je l'ai fait ci-dessus)?
nc
car ilscp
est trop lent et que vous n'avez pas besoin de chiffrement, vous pouvez passer àudpcast
: superuser.com/questions/692294/…Réponses:
Sur votre serveur (A):
Sur votre "client expéditeur" (B):la source
< /dev/null
partie?pv
, je suggérerais d'utiliser le "client serveur" carpv soemthing.zip | ...
cela affichera la progression du fichier lu dans le pipe.Remarque: si vous souhaitez également conserver les autorisations, la propriété et les horodatages des fichiers, nous utilisons tar avec netcat pour effectuer des transferts de répertoires et de fichiers.
Sur le système de réception:
Du système d'envoi:
J'espère que cela pourra aider.
la source
Ordinateur A:
nc -l -p 1234 > filename.txt
Ordinateur B:
nc server.com 1234 < filename.txt
Devrait fonctionner aussi;)
la source
Démarrez une autre instance de netcat sur l'ordinateur B. Faites simplement ce que vous avez fait sur l'ordinateur A, mais servez-le à partir de B. Donnez au nouveau serveur un nouveau port.
la source