在 Linux 上从目录路径 B 中删除在路径 A 中找不到的文件

在 Linux 上从目录路径 B 中删除在路径 A 中找不到的文件

例如,我在同一个系统上有两条路径:

\mnt\a\data
\mnt\b\data

中有一些目录和/或文件b\data不存在a\data。如何轻松删除这些多余的目录和/或文件?

更多信息:

  • 我使用它将我的媒体收藏副本存储在单独的驱动器上
  • 我每晚都会进行 rsync 操作ab因为我愿意接受数据丢失
  • 我使用此设置来mdraid避免因断电而导致的潜在数据丢失

答案1

b\data 中有一些目录和/或文件在 a\data 中不存在。如何轻松删除这些额外的目录和/或文件?

您可能想要--delete的选项rsync

rsync 最常见的用例之一是保持两个目录位置同步,使用如下命令:

rsync -av --delete /path1 /path2
  • -a存档模式;递归并包括权限/所有者/组/等
  • -v详细模式,让您可以看到正在执行的操作(首次测试或手动运行时很有用)
  • --delete or --del删除源中不存在的文件

相关内容