1

У меня большая музыкальная коллекция. Он организован в следующей структуре: исполнитель / альбом / trackTitle.

Со временем в некоторых каталогах у меня появляются файлы с дубликатами; большинство моих файлов - это mp3-файлы, но некоторые из них также конвертированы в mp4s (в том же каталоге), которые я сейчас вижу как дубликаты. Я хотел бы избавиться от них - у них одинаковое имя файла, другое расширение и более новая дата изменения по сравнению с оригиналами.

Под управлением Windows 10.

Как я могу сделать это, не просматривая каждую папку и не выбирая вручную mp4s для удаления?

2 ответа2

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. Это делается путем объединения

  1. %% ~ di Буква диска
  2. %% ~ pi Путь к файлу
  3. %% ~ ni Имя файла, исключая расширение

в %% ~ dpni, а затем добавив расширение .mp3. Делая это, мы гарантируем, что файлы MP4 и MP3, если они оба существуют, находятся в одном и том же каталоге, принимая во внимание проблему, о которой вы упоминали в своем комментарии выше, относительно файла MP3 с заданным именем и файла MP4. с тем же именем, но в другом каталоге.

Таким образом, если файл MP3 существует, то файл MP4 является дубликатом и может быть безопасно удален.

И ради полноты ...

Заметки

  • Кавычки необходимы вокруг всей структуры имени файла, если в имени есть пробелы.
  • Удвоенные знаки процента, потому что они в файле. Если вы введете это в консольном окне, то каждый экземпляр « %% » станет одним « % ».
0

Вы пробовали какие-либо инструменты для удаления дубликатов файлов? Я бы порекомендовал эту программу под названием dupeGuru music edition. Он поддерживает Windows, Linux и Mac. Он может идентифицировать похожие музыкальные файлы, даже если он закодирован по-разному. это бесплатное ПО и, по словам разработчиков, оно не устанавливает с ним нежелательного программного обеспечения.

ссылка на dupeGuru - http://www.hardcoded.net/dupeguru_me/

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .