移动具有相似名称的文件/目录,匹配规则

时间:2012-10-24 12:01:35

标签: shell merge filenames

我们正在从Mac Sever将大约4TB的文件移动到Windows Server08R2。由于字符不兼容,很多文件名都不会出现。我们运行了一个重命名工具来修复问题并再次复制。 我的问题是现在我有很多文件夹,其名称非常相似,如“O'Neil”和“O_Neil”。事实上,据我所知,他们都符合这条规则。 有太多的手工做,我正在考虑编写脚本,但我对脚本的经验有限。我想比较修改日期或文件大小并合并或将文件夹移动到存档并保留一组。在这种情况下,我不确定最佳做法。

1)理论上什么是最佳实践,按日期合并,归档较小的版本? 2)在实践中如何解决这些工具?剧本创意?

非常感谢任何帮助。

1 个答案:

答案 0 :(得分:0)

find /path -type f -print0 | xargs -0 md5sum |
awk '
{
  if ($1 in seen)
    printf "duplicate: %s and %s\n", $2, seen[$1]
  else
    seen[$1] = $2
}
'

Removing files with duplicate content from single directory [Perl, or algorithm]