2013-03-28 2 views
1

Я использую следующую команду для поиска определенных расширений файлов в папках, под-под-подпапках и т. Д. Однако он также возвращает результаты, если каталог/каталог, который имеет это конкретное ключевое слово, также , Как я могу обойти это?найти с ключевыми словами, но пропустить папки

find . \(-type d -a ! -name 'downloading' -a ! -name 'vntdone' -a ! -name '.' \) -o -name \*.avi -o -name \*.mkv -o -name \*.mp4 -o -name \*.VOB 

Любая помощь, которую я могу получить, это очень ценится! Спасибо.

ответ

1

Я не совсем уверен, что понимаю необходимость ваших первых параметров, но это то, что вы ищете?

find . -type f \( -name \*.avi -o -name \*.mkv -o -name \*.mp4 -o -name \*.VOB \) 

Этот выход файлов имена, оканчивающиеся avi, mkv, mp4 и VOB

+0

мне это нужно выводить папки, файл находится в так ... но не выводят результаты без имен файлов, так как папка может иметь ключевое слово: MP4 в нем ... – thevoipman

+0

то, что вы рекомендовали, тоже очень хорошо, но если имена папок имеют пробелы, он разбивает результат на части, можно ли это исправить? – thevoipman

+0

@thevoipman Что значит, что результат разбивается на части? он дает один результат на строку. Вам нужно передать этот вывод другой команде, которая имеет проблемы с анализом вывода с пробелами? если это так, отправьте команду, и я помогу вам исправить ее :) – Taoufix

Смежные вопросы