我有一些自动脚本,可以执行 FTP 上传等操作。我想知道一旦这些上传完成执行,我应该进行什么级别的错误检查。
当报告上传文件时是否会出现任何问题"226 Transfer complete"
,除了检查日志中的此字符串之外,还需要进行额外的测试来检查文件是否已成功上传?
答案1
不,不是的。 226 也可能发生在不同的情况下,但情况并非如此(ABORT
例如)。看RFC 959。
答案2
MD5SUM 或 SHA1SUM 可能可以解决问题。
那么问题是您要么必须在要上传到的服务器上计算校验和,要么从服务器下载文件并进行比较。但这也可能意味着它没有正确下载......
答案3
这取决于你所说的保证是什么意思。 226 表示传输已完成,没有检测到任何错误,因此除非未检测到的错误损坏了数据,或者服务器在将其从缓存或其他内容提交到磁盘之前崩溃,否则文件将是相同的。