Для установки нажмите кнопочку Установить расширение. И это всё.

Исходный код расширения WIKI 2 регулярно проверяется специалистами Mozilla Foundation, Google и Apple. Вы также можете это сделать в любой момент.

4,5
Келли Слэйтон
Мои поздравления с отличным проектом... что за великолепная идея!
Александр Григорьевский
Я использую WIKI 2 каждый день
и почти забыл как выглядит оригинальная Википедия.
Статистика
На русском, статей
Улучшено за 24 ч.
Добавлено за 24 ч.
Что мы делаем. Каждая страница проходит через несколько сотен совершенствующих техник. Совершенно та же Википедия. Только лучше.
.
Лео
Ньютон
Яркие
Мягкие

Из Википедии — свободной энциклопедии

find — утилита поиска файлов по имени и другим свойствам, используемая в UNIX‐подобных операционных системах. Может производить поиск в одном или нескольких каталогах с использованием критериев, заданных пользователем. По умолчанию find возвращает все файлы в рабочем каталоге. Более того, find позволяет применять пользователю определённые действия ко всем найденным файлам. Также поддерживаются регулярные выражения. Для поиска файлов по содержимому следует пользоваться утилитой grep.

Список ключей

  • -amin — время последнего обращения к файлу (в минутах).
  • -atime — время последнего обращения к файлу (в днях).
  • -cmin — время последнего изменения владельца или прав доступа к файлу (в минутах).
  • -ctime — время последнего изменения владельца или прав доступа к файлу (в днях).
  • -delete — удалять найденные файлы.
  • -depth или -d — начинать поиск с самых глубоких уровней вложенности, а не с корня каталога.
  • -empty — только пустые каталоги.
  • -exec command {} \; — выполняет над найденным файлом указанную команду; обратите внимание на синтаксис.
  • -group — владелец: группа пользователя или GID.
  • -L — разворачивать символические ссылки.
  • -ls — генерирует вывод как команда ls -dgils.
  • -maxdepth — максимальный уровень вложенности для поиска. «-maxdepth 1» ограничивает поиск текущим каталогом.
  • -mmin — время последнего изменения файла (в минутах).
  • -mount или -xdev — не переходить на другие файловые системы.
  • -mtime — время последнего изменения файла (в днях).
  • -name — искать по маске имени файла. Опция -name регистрочувствительная, то есть различает прописные и строчные буквы. Для поиска файлов без учета регистров воспользуйтесь опцией -iname.
  • -newer другой_файл — искать файлы, созданные позже, чем другой_файл.
  • -ok — перед выполнением команды, указанной в -exec, выдаёт запрос.
  • -P — не разворачивать символические ссылки (поведение по умолчанию).
  • -perm — указываются права доступа.
  • -print0 — выводит путь к текущему файлу на стандартный вывод, за которым следует символ ASCII NULL (код символа 0).
  • -print — показывает на экране найденные файлы.
  • -prune — используется, когда вы хотите исключить из поиска определённые каталоги.
  • -regex — искать по имени файла, используя регулярные выражения.
  • -regextype тип — указание типа используемых регулярных выражений.
  • -size — размер: указывается в 512-байтных блоках или байтах (признак байтов — символ «c» за числом).
  • -type — тип искомого: f=файл, d=каталог (directory), l=ссылка (link), p=канал (pipe), s=сокет.
  • -user — владелец: имя пользователя или UID.


Примеры

Поиск в текущем каталоге

Найти все файлы в текущем и дочерних каталогах, название которых начинается с my.

Обратите внимание: в понятиях unix файлом является все в том числе и каталоги.

find . -name 'my*'

Для поиска исключительно по именам файлов нужно использовать дополнительную опцию -type f 

find . -name 'my*' -type f

Поиск в определенном каталоге

Найти все файлы в корневом и дочерних каталогах, название которых начинается с my.

Поиск в корневом каталоге эквивалентен поиску по всему компьютеру.

find / -name 'my*'

Поиск файлов в каталогах /usr/local/man и /opt/local/man

find /usr/local/man /opt/local/man -name 'my*'

Поиск по нескольким именам файлов

Найти все файлы в текущем и дочерних каталогах, название которых начинается с my или qu.

Обратите внимание, что по умолчанию все аргументы соединены с помощью логического и (опция -a, от англ. and). Если необходимо объединить несколько аргументов логическим или — используйте опцию -o, от англ. or.

find . \( -name "my*" -o -name "qu*" \) -print

Поиск нескольких типов файлов, используя регулярные выражения

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

Данный поиск осуществляется с помощью регулярных выражений.

find . -type f -regex ".*\.\(jpg\|jpeg\|gif\|png\|JPG\|JPEG\|GIF\|PNG\)"

Предыдущий пример можно также записать с помощью регулярных выражений

find . -type f -regex "\(my\|qu\).*"

Выполнение команды

Опция -exec выполняет следующую за ней команду и подставляет вместо {} текущий файл. Найти все каталоги ниже указанного каталога и изменить им права доступа с помощью команды chmod:

find /path -type d -exec chmod 0755 {} \;

Опция -exec работает примерно в 10 раз медленнее, чем перенаправление вывода через xargs, поэтому данный код рекомендуется писать следующим образом:

find /path -type d | xargs chmod 0755

Однако каталоги с именами, содержащими пробелы, методом перенаправления через xargs обработаны не будут, поэтому следует использовать первый вариант, дополненный:

find /path -type d -exec chmod 0755 "{}" \;

Или воспользоватся опцией -print0 и -0 позволяет обрабатывать аргументы, содержащие пробелы и кавычки:

find /path -type d -print0 | xargs -0 chmod 0755

Поиск всех файлов php.ini в текущем каталоге и замена текста в каждом найденном файле с помощью команды sed.

find . -name 'php.ini' -exec sed -i 's/log_errors = Off/log_errors = On/g' "{}" \;

Сложный поиск в нескольких видах файлов и замен текста в каждом из них, от текущего каталога и ниже.

find . -regex ".*\.\(php\|js\|css\)" -exec sed -i 's/\/bitrix\/templates\//\/local\/templates\//g' "{}" \;

Поиск в зависимости от времени создания

Найти и вывести список файлов во всей файловой системе, изменённых в течение последней минуты:

find / -mmin -1 -print

Найти и вывести список файлов во всей файловой системе, которые были изменены более 31 дня назад:

find / -mtime +31 -print

Поиск по размеру файла

Найти и вывести список файлов во всей файловой системе, чей размер больше 100 Мб:

find / -size +100M -print

Поиск файлов, принадлежащих определенному пользователю

В данном примере поиск осуществляется по файлам принадлежащим пользователю с именем ilya

find . -user ilya

Поиск файлов c ограничением глубины

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

Начинает поиск в папке /var/www, но не глубже /var/www/*/*/*/* .

find /var/www -maxdepth 4 -name 'restore.php'

Поиск файлов с перечислением каталогов.

Ищет файлы в указанных каталогах.

find /var/spool/postfix/{deferred,active,maildrop,incoming}/ -type f

Поиск файлов по маске с исключением.

Ищет файлы php в текущем каталоге, исключая index.php

find . -name "*.php" ! -name "index.php"

Рекурсивное удаление файла от текущего каталога, на заданную глубину.

Удаляет все файлы restore.php от текущего каталога, но не глубже 4 уровня вложенности относительно аргумента в командной строке

Начинает поиск в папке /var/www, но не глубже /var/www/*/*/*/* и удаляет все файлы restore.php в найденном.

find /var/www -maxdepth 4 -name 'restore.php' -exec rm -r {} \;

Игнорирование ошибок

Если при поиске возникает ошибка (например — нет доступа чтения из каталога) то вывод команды становится менее информативным. Перенаправьте вывод STDERR в /dev/null.

find / -name 'secret.keys' -print 2>/dev/null

Также можно использовать один из следующих вариантов:

find / -name  "имя искомого файла" |& grep -v 'Отказано в доступе'
find / -name  "имя искомого файла" |& grep -v 'Permission denied'

Ссылки

  • find(1) — страница справки man по пользовательским командам GNU/Linux  (англ.)  (англ.)


Эта страница в последний раз была отредактирована 27 октября 2021 в 00:44.
Как только страница обновилась в Википедии она обновляется в Вики 2.
Обычно почти сразу, изредка в течении часа.
Основа этой страницы находится в Википедии. Текст доступен по лицензии CC BY-SA 3.0 Unported License. Нетекстовые медиаданные доступны под собственными лицензиями. Wikipedia® — зарегистрированный товарный знак организации Wikimedia Foundation, Inc. WIKI 2 является независимой компанией и не аффилирована с Фондом Викимедиа (Wikimedia Foundation).