📁 文件管理
文件夹同步与对比
在不同位置的文件夹之间同步文件,对比差异,保持内容一致
★★☆ 中级 10-15 min 2025年1月12日
概述
在多个设备或位置工作时,保持文件夹同步很重要。Claude 可以帮你对比两个文件夹的差异,智能同步文件,确保内容一致,避免手动复制粘贴的繁琐。
适用场景
- 在工作电脑和家用电脑之间同步项目
- 同步本地文件夹和外部硬盘
- 对比备份是否完整
- 保持多个工作目录内容一致
操作步骤
1
对比文件夹差异
先分析两个文件夹有什么不同。
请对比以下两个文件夹的差异:
- 源:~/Documents/Projects
- 目标:/Volumes/USB/Projects
显示:
- 仅在源文件夹中存在的文件
- 仅在目标文件夹中存在的文件
- 两边都有但内容不同的文件(通过修改时间或校验和判断)
- 统计总数和总大小
2
生成同步计划
根据差异生成详细的同步方案。
基于上述差异,请生成同步计划:
- 需要从源复制到目标的文件列表
- 需要从目标复制到源的文件列表(双向同步)
- 冲突文件(两边都修改过)的处理建议
- 预估同步需要的时间和空间
在执行前让我确认
3
执行单向同步
将源文件夹的内容同步到目标。
请执行单向同步:
- 从 ~/Documents/Projects 同步到 /Volumes/USB/Projects
- 只复制新文件和更新的文件
- 保留目标文件夹中额外的文件(不删除)
- 显示同步进度和完成文件数
- 记录同步日志到 ~/sync_log.txt
4
双向同步
让两个文件夹保持完全一致。
请执行双向同步:
- 源:~/Documents/Work
- 目标:/Volumes/Backup/Work
- 较新的文件覆盖旧文件
- 对于冲突文件(两边都更新),保留两个版本并加后缀
- 删除一方已删除的文件
- 完成后生成同步报告
5
设置监控同步
创建脚本定期检查并同步。
请创建一个监控脚本:
- 每小时检查一次 ~/Documents/ActiveProject 的变化
- 如果有新文件或修改,自动同步到 /Volumes/Backup/ActiveProject
- 发送通知告知同步结果
- 保存到 ~/watch_sync.sh 并设置自动运行
双向同步可能导致文件意外删除或覆盖。首次同步前务必备份重要数据!建议先使用 —dry-run 模式查看将执行的操作。
使用 rsync 的 -avh 参数可以显示详细进度。添加 —exclude 可以排除不需要同步的文件,如 .DS_Store、node_modules 等。
常见问题
Q: 如何处理同步冲突? A: 可以选择:1) 保留较新的文件;2) 保留两个版本并重命名;3) 手动选择保留哪个。Claude 会标注冲突文件供你决定。
Q: 可以排除某些文件不同步吗? A: 可以。使用 —exclude 参数排除特定文件或文件夹,如 “排除 .git 和 node_modules 文件夹”。
Q: 同步和备份有什么区别? A: 同步是双向的,保持两边一致;备份是单向的,保留历史版本。对于重要数据,建议使用专门的备份方案而非简单同步。