netcat和文件传输

我该如何使用netcat通过networking传输文件? IIRC类似的东西nc -l -p 12345 > destfile (在接收端)+ dd if=/dev/sourcedevice| nc ipaddress 12345 dd if=/dev/sourcedevice| nc ipaddress 12345 (在发送端)用于工作。 那就是当传输完成后,发送过程就结束了,终止了tcp连接,所以接收过程也退出了。 但是现在,发送进程只是挂起(就好像它可以在EOF之后传送任何东西),所以接收进程也挂起。 这是完全不可写的。

我也在发送端尝试了-c,但是它使得destfile具有随机大小(几乎是预期的大小)。 或者,也许有一些可靠的替代netcat?

我总是做的是:

 nc -l -p 12345 > destfile nc ipaddress 12345 < sourcefile