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: 
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.
That's a long shot, but if the server supports [php](https://php.net), you can exploit that.

Save the following as a `php` file (say, `check.php`), in the same folder as your `name_of_file.txt` file:

```
<? php
echo md5_file('name_of_file.txt');
php>

```

Then, visit the page `check.php`, and you should get the md5 hash of your file.

Related questions: 

* <https://stackoverflow.com/q/29909233/2657549>
* <https://stackoverflow.com/q/30626006/2657549>
* <https://stackoverflow.com/q/30056566/2657549>