我已经将一个网站从一个服务器移动到另一个服务器,我使用SCP复制了这些文件
我现在想检查所有文件是否已被复制好.
我如何比较网站?
计算文件夹的文件?
获取文件夹树的总文件大小?
或者有更好的方法来比较网站?
保罗
pha*_*yes 36
使用带有递归-r和快速-q选项的diff .这是最好的,也是迄今为止最快的方法.
diff -r -q /path/to/dir1 /path/to/dir2
Run Code Online (Sandbox Code Playgroud)
它不会告诉你差异是什么(删除-q选项以查看),但它会很快告诉你所有文件是否相同.
如果它没有显示输出,则所有文件都相同,否则它将列出不同的文件.
Pau*_*xon 10
如果你使用scp,你可能已经使用过rsync.
rsync不会传输已经是最新的文件,因此您可以通过再次运行rsync来验证副本是否是最新的.
如果您在旧主机上执行此类操作:
scp -r from/my/dir newhost:/to/new/dir
Run Code Online (Sandbox Code Playgroud)
然后你可以做类似的事情
rsync -a --progress from/my/dir newhost:/to/new/dir
Run Code Online (Sandbox Code Playgroud)
'-a'是'archive'的缩写,它执行递归复制并保留权限,所有权等.查看手册页以获取更多信息,因为它可以做很多聪明的事情.
cd website
find . -type f -print | sort | xargs sha1sum
Run Code Online (Sandbox Code Playgroud)
将生成文件的校验和列表.然后,您可以diff查看是否有任何丢失/添加/不同的文件.
也许你可以使用类似的东西:
find <original root dir> | xargs md5sum > original
find <new root dir> | xargs md5sum > new
diff original new
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
15048 次 |
| 最近记录: |