Ich verwende so etwas, um Dateien von einem Computer auf einen anderen zu senden:
So liefern Sie eine Datei (auf Computer A):
cat something.zip | nc -l -p 1234
So empfangen Sie eine Datei (auf Computer B):
netcat server.ip.here. 1234 > something.zip
Meine Frage ist ... kann ich das Gegenteil tun? Angenommen, ich habe eine Datei auf Computer B und möchte sie an A senden, aber nicht so, wie ich es oben geschrieben habe. Dazu muss der Computer, der die Datei (A) empfangen soll, ein "Listening" -Server sein und den Computer verbinden, der die Datei sendet ( B) zum Server und senden Sie die Datei? Ist es möglich? Ich denke, es könnte sein, aber ich bin nicht sicher, wie ich das machen soll.
Falls meine obige Erklärung durcheinander ist: Wie sende ich eine Datei an den Server, anstatt die Datei auf dem Server bereitzustellen und dann von dort zu nehmen (wie oben)?
nc
weilscp
zu langsam ist und Sie keine Verschlüsselung benötigen, können Sie wechseln wollenudpcast
: superuser.com/questions/692294/...Antworten:
Auf deinem Server (A):
Auf Ihrem "Absender-Client" (B):quelle
< /dev/null
Teil?pv
, würde ich vorschlagen, den "Server-Client" so zu betreibenpv soemthing.zip | ...
, dass der Fortschritt des Lesens der Datei in der Pipe angezeigt wird.Wenn Sie außerdem Dateiberechtigungen, Eigentumsrechte und Zeitstempel beibehalten möchten, verwenden wir tar mit netcat , um Verzeichnisse und Dateien zu übertragen.
Auf dem empfangenden System:
Vom sendenden System:
Ich hoffe, das hilft.
quelle
Computer A:
nc -l -p 1234 > filename.txt
Computer B:
nc server.com 1234 < filename.txt
Sollte auch funktionieren;)
quelle
Starten Sie eine weitere Instanz von netcat auf Computer B. Führen Sie die gleichen Schritte wie auf Computer A aus, bedienen Sie sie jedoch über B. Weisen Sie dem neuen Server einen neuen Port zu.
quelle