如何查找两个磁盘结构之间丢失的目录?
A/, B/, C/, D/。(较新的副本)A/, B/, D/, E/。(旧副本)我想找出与旧副本相比,新副本中缺少哪些目录。
结果:“Dir E”。
我怎样才能做到这一点?我不想要任何有关文件的报告。
这可以仅创建特定目标中缺少的目录:
find -type d -exec mkdir -p "/mnt/pics/Albums/{}" \;
Run Code Online (Sandbox Code Playgroud)
更新:我的问题中建议的文章是关于内容而不是文件夹。此外,没有提出明确的解决方案作为“diff -rq path1 path2”的答案。
Fel*_*xJN 11
diff允许比较目录内容。用于-r递归遍历子目录并-q仅报告差异:
diff -rq /path/to/dir1 /path/to/dir2
Run Code Online (Sandbox Code Playgroud)
例如:
$mkdir A B
$touch A/1 A/2 A/3 B/1 B/3 B/4
$diff -rq A B
Only in A: 2
Only in B: 4
Run Code Online (Sandbox Code Playgroud)
请注意,这还会比较文件的相同内容!