我在寫一個bash腳本,它將圖像從一個目錄(及其所有子目錄)複製到另一個目錄。比較Linux中多個文件的文件名和md5sums
到目前爲止,我有這樣的:
find . -type f -regextype posix-extended -regex '^.*IMG_[0-9]{4}\.jpg' -exec cp {} ~/$output \;
這工作,但問題是比這更復雜。有兩種情況:
- 一些圖像具有相同的名稱,但是是不同的。在這個 的情況下,他們將被重新命名,只需在名稱的末尾添加第二個「.JPG」即可。
- 但是,如果兩個文件具有相同的名稱並且是相同的文件,則只應將一個文件複製到輸出目錄,並將另一個文件的絕對路徑寫入文本文件 - duplicates.txt。
我在想我需要在文件名上使用cmp,然後使用md5sum來檢查相同的文件,但是我不確定如何在文件名上使用cmp,或者甚至可能。
在此先感謝您的幫助!
'fdupes'命令可能會做你想做的。 –
'cmp'告訴你文件是否相同,它逐字節地進行比較。 –