Удаление файлов с одинаковым именем и другим расширением
У меня большая музыкальная коллекция. Он организован в следующей структуре: исполнитель / альбом / trackTitle.
Со временем в некоторых каталогах у меня появляются файлы с дубликатами; большинство моих файлов - это mp3-файлы, но некоторые из них также конвертированы в mp4s (в том же каталоге), которые я сейчас вижу как дубликаты. Я хотел бы избавиться от них - у них одинаковое имя файла, другое расширение и более новая дата изменения по сравнению с оригиналами.
Под управлением Windows 10.
Как я могу сделать это, не просматривая каждую папку и не выбирая вручную mp4s для удаления?
2 ответа
Я собираюсь предположить, что вручную, вы имеете в виду, что вы не хотите удалять их по одному.
В Windows вы можете сделать это, просто перейдя на верхний уровень каталогов музыкальных файлов и напечатав:
DEL *.mp4 /S
Флаг '/ S' удаляет файлы не только в текущем каталоге, но и во всех подкаталогах.
В Linux, также из верхнего каталога, вы должны набрать:
find . -name '*.mp4' -exec /usr/bin/rm '{}' \;
Используйте полный путь к "rm", чтобы не использовать псевдоним "rm -i". Кроме того, фигурные скобки в кавычках, если у вас есть имена файлов с пробелами в них.
Итак, ОС - это Windows, и вполне возможно, что MP4 - единственная версия трека, и в этом случае мы не хотим ее удалять.
Учитывая это, deduplicate.bat будет выглядеть так:
@ECHO OFF
FOR /F "usebackq delims=" %%i in ( `dir /b /s *.mp4` ) do (
IF EXIST "%%~dpni.mp3" (
DEL "%%i"
)
)
То есть сделать рекурсивный список каталогов всех файлов MP4. Для каждого найденного файла MP4 проверьте, существует ли соответствующий файл MP3. Это делается путем объединения
- %% ~ di Буква диска
- %% ~ pi Путь к файлу
- %% ~ ni Имя файла, исключая расширение
в %% ~ dpni, а затем добавив расширение .mp3. Делая это, мы гарантируем, что файлы MP4 и MP3, если они оба существуют, находятся в одном и том же каталоге, принимая во внимание проблему, о которой вы упоминали в комментарии выше, относительно файла MP3 с заданным именем и файла MP4. с тем же именем, но в другом каталоге.
Таким образом, если файл MP3 существует, то файл MP4 является дубликатом и может быть безопасно удален.
И, ради полноты ...
Заметки
- Кавычки обязательны для всей структуры имени файла, если в имени есть пробелы.
- Удвоенные знаки процента, потому что они в файле. Если вы введете это в консольном окне, то каждый экземпляр " %% " станет одним " % ".
Вы пробовали какие-либо инструменты для удаления дубликатов файлов? Я бы порекомендовал эту программу под названием dupeGuru music edition. Он поддерживает Windows, Linux и Mac. Он может идентифицировать похожие музыкальные файлы, даже если он закодирован по-разному. это бесплатное ПО и, по словам разработчиков, оно не устанавливает с ним нежелательного программного обеспечения.
ссылка на dupeGuru - http://www.hardcoded.net/dupeguru_me/