—
—
两个文件夹都在你的浏览器中读取。不上传任何内容,在你按下按钮之前不会写入任何文件。
关于同步两个文件夹
robocopy src dst /MIR 把这件事做得很好,而这恰恰是没人应该凭记忆敲出它的原因。/MIR 表示镜像,而镜像意味着它会把源中没有的东西从目标中删除。把两个路径写反,一块备份盘几秒钟就空了。没有预览,也没有撤销。
这个工具把同样的工作反过来做。先比较两个文件夹,把每个文件归入一类,把数量和体积摆在屏幕上——然后才轮到按钮做事。
使用方法
- 选择源文件夹——里面是正确的那一份
- 选择目标——内容应该去的地方。浏览器会请求写入权限
- 保持添加新增并更新变动不变。它永远不会删除任何东西
- 阅读列表:哪些是新的,哪些变了,哪些只存在于目标
- 按下立即同步——或者带走一份 robocopy 或 rsync 脚本
四个分类
- 新增 — 源中有,目标中没有。这些会被复制
- 有变动 — 两边都有但不一样。这些会被覆盖
- 仅存在于目标 — 源中没有。除非你选择镜像,否则保持原样
- 已经相同 — 跳过,不花任何代价
什么算「有变动」
这是值得弄懂的一个选项。
- 大小不同 — 最快,而且已经能捕捉到几乎所有真实的修改
- 大小或日期不同 — 还能捕捉到那些恰好没改变大小的修改。这是默认设置,也是 robocopy 的做法
- 内容不同 — 对两份都做 SHA-256。唯一确定的答案,也是唯一会读遍两个文件夹每个字节的方式,所以它有意做得慢
字节相同但时间戳不同的文件,在「内容」模式下算相同,在「日期」模式下算有变动。这不是任何一方的缺陷,而正是两者的区别所在——因此报告会写明答案出自哪种模式。相差一两秒的时间戳被视为相同,因为在两个不同文件系统之间完美复制一个文件,本来就会产生这样的偏差。
镜像,以及它为什么不是默认值
镜像还会把源中没有的内容从目标中删除。对于一块本就该是精确副本的真正备份盘,这是正确选择;而在几乎所有其他场合,它都是错误选择。
所以它是一个独立选项:会被删除的文件按名字逐一列出,警告中会写出两个文件夹的名字,而且必须勾选确认框,按钮才会生效。列表一变,勾选就自动清空——因为对一批文件的同意,不是对另一批文件的同意。
删除还安排在最后,在所有复制完成之后。这样,中途失败绝不会让目标比开始时更空。
复制只朝一个方向
从源到目标,绝不反向。双向同步必须在两边都改动时决定听谁的,而一个靠猜的工具就是会丢失工作成果的工具。这里的源文件夹以只读方式打开,永远不会被修改。
人们用它做什么
- 把文档或照片备份到移动硬盘
- 让 U 盘与工作文件夹保持一致
- 把项目文件夹复制到第二台机器,而不必重传几个 GB
- 只用变动过的文件刷新一个网站文件夹
- 用内容模式确认备份是否真的一致,再决定是否信任它
- 把旧笔记本上的文件夹并入新机器上的文件夹
值得知道
- 可在 Windows、macOS、Linux 和 ChromeOS 上使用。 移动浏览器无法把文件夹交给网页
- 不上传任何内容。两个文件夹都在页面内读取,只有目标会被写入
- Firefox 和 Safari 可以比较并给出 robocopy 或 rsync 脚本,但无法在这里写入文件;Chrome、Edge 和 Opera 可以
- 大文件以流的方式直接写入磁盘,所以 4 GB 的文件不必装进内存
- 同步后会重新读取目标,因此你最后看到的列表就是事实
- 内容模式会读遍两个文件夹的每个字节。文件夹很大时,请预留时间
- 每个列表显示前 250 个文件
- 脚本只有一行 robocopy 或 rsync,而不是每个文件一行;其中的镜像那一行在你启用之前始终是禁用状态