WinSCP works great for one-time transfer. I use it all the time, and highly recomend it.
But if you are doing regular transfers, you may find another option useful. I use rsync (from Cygwin) to keep data on my linux server synced to a W2K box.
rsync $RSYNC_OPTIONS $SOURCE $DESTINATION
The full command I use it:
rsync -auvz --progress --partial --bwlimit=60 -e ssh --delete ./
user@linux.server:/home/user/active_files
What does this do?
$SOURCE = ./ (the source directory is the current directory on the computer I am running rsync on)
$RSYNC_OPTIONS
--delete DELETES files on the destination that do not appear on the source
-auvz (transfer All, Update [only transfer changed files], Verbose logging, use Zip compression)
--progress (show progress indicators)
--partial (keep partially transferred files so that they can be resumed later)
--bwlimit=60 (limit transfer to not more than 60kbps of bandwidth)
-e ssh (use ssh as the transport, tunneling the transfer through ssh)
$DESTINATION =
user@linux.server:/home/user/active_files
there are three components to the destination in this example:
username (user)
server address (linux.server)
absolute path to the destination directory on the server (/home/user/active_files)
If you can log into a server with the command "ssh
user@linux.server", then you probably already have the necessary server side software.
Client side, you will need rsync and ssh. I got these from Cygwin (
http://www.cygwin.com). There are other versions of rsync and ssh that you can use as well. Those packages are usually smaller and simplier. I just had much more success with the Cygwin packages.