В моем музыкальном каталоге есть несколько дубликатов файлов в формате .mp3 и .flac. Учитывать:
/dir1/music1.flac
/dir1/music1.mp3
/dir2/music1.mp3
/dir2/music2.MP3
/dir2/music2.flac
/dir2/music3.mp3
music1.flac и music1.mp3 в dir1 - это одна и та же песня в разных форматах, но music1.mp3 в dir1 и dir2 не могут быть (то же название, но выпущены на разных альбомах).
Я хочу пройти по нескольким подкаталогам, найти файлы с одинаковым префиксом, но с разными расширениями, а затем удалить только файлы mp3. Таким образом, для вышеуказанных каталогов у меня останется:
/dir1/music1.flac
/dir2/music1.mp3
/dir2/music2.flac
/dir2/music3.mp3
Я пытался использовать команду find с логическим И, но безуспешно. Некоторые неудачи с моей стороны:
find ./ -regex '.*\(mp3\|flac\)$'
find . -type f -name "*mp3" -and -name "*flac"
Любая помощь приветствуется. Я решил аналогичные проблемы с опубликованным кодом stackoverflow самостоятельно, но я в тупике. ВЫ, ПАРНИ, ОТЛИЧНЫЕ.