Copyright 2011, Alex Budovski.
Transmit lets you transfer files over a network, really fast! It is a simple
alternative to netcat on Windows. The connection is unencrypted, like
transmit is designed for Windows only. Linux users have a modern version of
transmit is the transmitting part of the netcat
"listen + transmit" communication pair. It's mainly used to send from a
Windows host to a POSIX host since Windows to Windows communication can be done
via existing graphical tools such as TeraCopy.
Run with no arguments for usage information.
Supports any recent version of Visual C++. With a VC++ command prompt,
>cd transmit >nmake
This will automatically create a debug and release build in the
rel\ folders, respectively. Or you can just download the prebuilt
package from github.
Transfer a big file from hostA to hostB
On the receiving end (Linux box), assuming modern GNU
hostB$ nc -l 1234 > bigfile.dat # transmitter, Windows (cmd.exe) hostA> transmit c:\bigfile.dat hostB 1234
Alternatively, you can use an MinGW bash shell (e.g. Git Bash)
# transmitter, Windows (Bash) hostA$ transmit /c/bigfile.dat hostB 1234
The advantage of the latter is that it allows you to use all the Unix utilities
time to see how long the transfer took,
tar to send (and optionally
compress) entire directories, preserving names and structure, etc.
Transfer a directory, and compress with gzip.
On the receiver (Linux):
hostB$ nc -l 1234 | tar -xvzf -
The sender (Windows, with Bash). Suppose we want to send a folder
compressing it on the fly with gzip:
hostA$ tar -czvf - big_dir | transmit - hostA 1234
Since gzipping is somewhat expensive on the CPU, you may get better throughput
by omitting the 'z' flag in the tar command. I.e.
tar -cvf and