Как может я использовать найти команду более эффективно?

Я хотел знать, что лучший способ состоит в том, чтобы использовать команду находки эффективно?

Я обычно использую, find [filename] [dir] который дает мне длинный список имен файлов ни один из них любой путь, связанный с моим поиском.

Я просто должен найти один файл в конкретном каталоге. Какова команда для этого?

15
задан 19 June 2012 в 23:16

1 ответ

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

Для случая использования, о котором вы упомянули, давайте предположим, что вы хотите найти файл passwd в /etc:

find /etc/ -name passwd

, который вы говорите «начиная с etc, найдите файл, чей [ 1111] name будет passwd

, если вы не указываете критерии (или «опции» в языке поиска), то, что делает поиск, начинается с указанного вами пути (или путей), и рекурсивно находит все файлы и каталоги внизу. Таким образом, опции «фильтруют» эти файлы, чтобы сузить то, что вы ищете.

Найдите все файлы JPG в любой точке вашей файловой системы:

find / -name "*jpg" 
[ 1117] Рекомендуется использовать кавычки в ваших настройках, потому что в противном случае расширение оболочки может вызвать у вас головную боль.

Найдите любые PDF-файлы, независимо от регистра, в Документах или Загрузках:

find Documents/ Downloads/ -iname "*pdf"

выполните man find и прокрутите вниз до пункта ТЕСТЫ, и вы найдете все «критерии», которые можно найти, чтобы сузить свой поиск. Вы можете искать файлы с определенными именами файлов, принадлежащими определенным пользователям или группам, с определенными правами доступа к файлам, существо из конкретный тип (например, -type d найдет только каталоги, в то время как -type f найдет только простые файлы, исключая каталоги), файлы, которые старше или старше определенного количества дней (или минут), пустые файлы, которые являются исполняемыми, и так далее.

На странице справки find вы также найдете раздел, который называется ACTIONS, они могут идти после критериев и запускаться любым файлом, который соответствует всем критериям. Таким образом, вы можете выполнять find такие вещи, как удаление найденных файлов, выполнение произвольных команд над ними и т. Д.

Но, конечно, основной синтаксис остается:

find [starting path(s)] [conditions or criteria]
0
ответ дан 19 June 2012 в 23:16

Другие вопросы по тегам:

Похожие вопросы: