[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[系统相关] robocopy如何判断是否跳过了拷贝

本帖最后由 小白龙 于 2024-9-27 07:39 编辑

我现在遇到一个问题,
robocopy有个很不错的功能, 就是拷贝的文件和拷贝到的文件: 如果是相同的, 就会跳过拷贝, 但是我怎样知道是否跳过了拷贝了呢?

因为我在拷贝之后, 有校验md5的代码, 如果要是知道上边跳过拷贝了, 那就不用检验md5了(只有没跳过拷贝,即完整拷贝时才校验), 这样就省了很多时间, 求路过大佬支招, 谢谢

1、BCompare 可以比较文件夹,但不知是不是你需要的

2、robocopy 日志记录选项中 有个
    /V :: 生成详细输出,同时显示跳过的文件。
   你可以试试

TOP

回复 2# hnfeng


    感谢支招

用比较的话, 感觉又多了步骤, 可能就慢了
用详细信息的话, 批处理处理起来感觉太麻烦了

TOP

回复 3# 小白龙


    其实是你不怎么相信 robocopy 吧
如果源和目标文件的时间戳和大小都相同,大概率文件相同的(我也不知道robocopy凭哪些信息来判断)
可以用BCompare 打开 MD5 全面比较一遍,如果没有发现MD5相同但是robocopy跳过的情况,之后的,就相信 robocopy 即可
本来复制加校验就很费时间。

或者你使用 Fastcopy,复制每个文件后自动校验

TOP

回复 4# hnfeng


    不是不相信robocopy, 是因为每个文件有个md5值进行比较, 所以也是想稳妥

TOP

本帖最后由 hnfeng 于 2024-9-27 13:23 编辑

robocopy /s /v /ndl /np /njh /njs [DIR1] [DIR2] | findstr /i "新文件"
然后用 For 获取到文件名,再校验文件

或者用该命令生成 LOG ,复制完再借用LOG校验

TOP

返回列表