Я знаю, это звучит как довольно простая проблема, но это не так!

Я пытаюсь найти все видеофайлы на съемном диске через графический интерфейс. Могут быть различные типы видеофайлов, таких как avi, mpg, mov ... и т.д. Я не уверен на 100% во всех возможных типах файлов, поэтому я использую инструмент с графическим интерфейсом, а не команду поиска терминала.

Накопитель, который я запрашиваю, имеет огромную массу (300 ГБ) данных, охватывающих резервные копии за 10 лет, полный беспорядок! Тип файла диска - ext4.

Я пробовал сома, он прекрасно работал с поиском нужных файлов, но у него не было функции копирования в нужное место! Я попробовал индексатор поиска KDE (4.8) nepomuk для настольных компьютеров, но он занял слишком много времени, чтобы проиндексировать огромную массу данных, и не завершился, плюс у него не было способа индексировать только начальные заголовки файл. Я также попробовал последнее приложение «Desktop Search» в Ubuntu 12.04, но у него нет опции типа файла!

Я смутно помню различные ранние версии или Ubuntu, не способные выполнить задачу.

Ваши предложения будут с благодарностью.

1 ответ1

0

Там не может быть так много файловых окончаний, не так ли? По крайней мере, это конечное число. Я считаю, что эта задача на самом деле исключительно подходит для терминальной работы.

Помимо обычных расширений

  • .avi
  • .mpg/.mpeg
  • .wmv
  • .mov
  • .mkv
  • .flv

нечувствительным к регистру образом вы, вероятно, сможете получить правильное предположение об оставшихся видеофайлах, выполнив поиск по всем файлам выше определенного размера, возможно, исключая некоторых обычных подозреваемых, не связанных с видео, таких как

  • .rar
  • .zip
  • .gz
  • .mp3
  • .flac
  • .pdf
  • .doc

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

Я бы, таким образом, итеративно сделать, например,

find /my/drive -not -iregex '.*\.\(avi\|mpe?g\|wmv\|mov\|mkv\|flv\|rar\|zip\|gz\|mp3\|flac\|pdf\|doc\)' -type f -size +10M

найти дополнительные окончания файлов, которые могут быть видео, и добавить их в список расширений видео.

Это не должно занять много запусков (вероятно, только один), и будет быстрым, так как списки кэшируются после первого запуска.

Как только окончание файла будет собрано, найдите все видеофайлы, сопоставив их в своем уточненном списке расширений:

find /my/drive -iregex '.*\.\(avi\|mpe?g\|wmv\|mov\|mkv\|flv\)' -type f

Теперь вы можете напрямую использовать эту команду и выполнять действия со всеми файлами одновременно, например, перемещая их в другое место, или просто перечисляя их, или то, что вы хотите сделать. Возможно, просто вручную сделайте что-нибудь с ними после того, как узнаете их местоположение.


Есть более замысловатые решения , которые проверяют содержимое всех файлов, например , утилита file в комбинации с find , а затем grep ИНГ результатом для видео файлов, но это было бы много магнитуды медленнее. Гадание по расширению имени файла является более грубой сеткой, но, вероятно, все равно ударит по всем файлам.

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