Question: Is there any way I can verify the integrity of a remotely transferred file? I am currently transferring a large amount of files and folders from an ftp server to another remote server using wget, but I have no way of knowing if the files are corrupt.
Is there any way I can verify the integrity of the transfer, by getting something like the MD5 hash of the remote files? Is there any other file transfer protocol that supports this?

Answer: 
`rsync` is almost always the best answer for file transfers. It's best known for its differential optimization transfers (great when you already have a similar file or directory) but it profusely checksums every step of the transmissions.
While I really like the md5deep and rsync answers (and upvoted both), it sounds like you're facing a really hard group of people at the source server. An alternative that is really ugly but better than nothing is to cull the transfer log for the file sizes then compare them locally.

```
wget -nv -o log.txt ftp://ftp.myserver.com/welcome.msg

```

...created a logfile line that looks like this:

```
2010-01-01 09:47:17 URL: ftp://ftp.myserver.com/welcome.msg [470] -> "welcome.msg" [1]

```

So by using a little script-fu with some awk or whatnot, you can pull out the filename and filesize, then at least compare that they match. I reiterate that this isn't pretty and should be your last-ditch solution...but it works.