我正在编写一个 bash 脚本,它将图像从一个目录(及其所有子目录)复制到另一个目录。
到目前为止,我有这个:
find . -type f -regextype posix-extended -regex '^.*IMG_[0-9]{4}\.jpg' -exec cp {} ~/$output \;
这行得通,但问题比这更复杂。有两种情况:
- 一些图像具有相同的名称,但不同。在这种情况下,只需在名称末尾添加第二个“.JPG”即可对其进行重命名。
- 但是,如果两个文件具有相同的名称并且是相同的文件,则应仅将一个复制到输出目录,而将另一个的绝对路径写入文本文件-duplicates.txt。
我在想我需要在文件名上使用 cmp 然后 md5sum 来检查相同的文件,但我不确定如何在文件名上使用 cmp ,或者这是否可能。
提前感谢您的帮助!