我正在编写一个应用程序,其中要求是将文件从远程SFTP服务器传输到本地计算机,反之亦然。在文件传输期间,我想确保在传输过程中没有数据包丢失和损坏。因此,想法是在传输之前在远程文件(驻留在sftp服务器上)上运行MD5校验和,然后启动传输过程。传输完成后,在本地文件上运行md5并比较两个校验和。
我正在使用JSCH连接到sftp服务器,代码在java.But我不知道如何在驻留在SFTP服务器上的远程文件上运行md5。我的代码必须先在远程文件上运行MD5转移发生了。请知道如何实现这一目标。
答案 0 :(得分:2)
大多数Unix系统都有md5sum
命令。您可以在远程服务器上调用它来检索哈希值。
$ md5sum /tmp/test
34a27208f62ff3bdae031c9e8a354ac3 /tmp/test
Jsch网站包含an example,其中显示了如何在远程服务器上调用命令。这可以很容易地适用于运行md5sum
命令。