如何通过校验和或 md5 命令在 unix shell 脚本中验证文件传输cp,scp 命令?

问题描述

我有一个 unix shell 脚本,用于创建文件并将文件一个路径传输到另一个路径(来自同一服务器或另一个) 然后将文件从相同或不同的服务器传输到此文件夹。

我无法确定可以通过脚本验证我的文件传输 md5 或校验和的方法。通常我会获取文件夹和目标文件夹的校验和并手动匹配它们。

请指教

解决方法

在你的脚本中你可以插入这样的行:

sha1sum <list of files> >files.sha1

生成带有 sha1 和的文件。然后将所有文件(包括带有哈希值的文件)传输到目标位置,例如:

scp /path/* user@host:localion

然后执行(例如通过 ssh)来检查目标文件的 sha1 哈希:

ssh user@host "cd location; sha1sum -c files.sha1"

这只是一个例子,你应该根据你的环境调整它