Различия
Показаны различия между двумя версиями страницы.
| Предыдущая версия справа и слева Предыдущая версия Следующая версия | Предыдущая версия | ||
| find [2017/02/07 09:25] – [Поиск каталога] mirocow | find [2023/07/27 10:01] (текущий) – [Таблица] 192.168.1.159 | ||
|---|---|---|---|
| Строка 1: | Строка 1: | ||
| {{tag> | {{tag> | ||
| - | ====== Поиск файлов с реальном сканированием. ====== | + | ====== |
| Команда find выполняет просмотр файловой системы для поиска файла, что делает этот инструмент медленным, | Команда find выполняет просмотр файловой системы для поиска файла, что делает этот инструмент медленным, | ||
| Для поиска по имени обязательно нужно указывать ключ -name | Для поиска по имени обязательно нужно указывать ключ -name | ||
| Пример: | Пример: | ||
| - | | + | <code bash> |
| По умолчанию find производит поиск рекурсивно в текущем каталоге. | По умолчанию find производит поиск рекурсивно в текущем каталоге. | ||
| + | |||
| + | ^ Описание опций | ||
| + | | **Опция** | ||
| + | | -name | Поиск по имени. | ||
| + | | -iname | ||
| + | | -type | Тип объекта поиска. Возможные варианты: | ||
| + | | -size | Размер объекта. Задается в блоках по 512 байт или просто в байтах (с символом «c»). | ||
| + | | -mtime | ||
| + | | -mmin | Время изменения в минутах. | ||
| + | | -atime | ||
| + | | -amin | Время последнего обращения в минутах. | ||
| + | | -ctime | ||
| + | | -cmin | Последнее изменение владельца или прав в минутах. | ||
| + | | -user | Поиск по владельцу. | ||
| + | | -group | ||
| + | | -perm | С определенными правами доступа. | ||
| + | | -depth | ||
| + | | -maxdepth | ||
| + | | -prune | ||
| + | | -mount | ||
| + | | -regex | ||
| + | | -regextype < | ||
| + | | -L или -follow | ||
| + | | -empty | ||
| + | | -delete | ||
| + | | -ls | Вывод как ls -dgils | ||
| + | | -print | ||
| + | | -print0 | ||
| + | | -exec < | ||
| + | | -ok | Выдать запрос перед выполнением -exec. | ||
| + | | | | | ||
| + | | **Также доступны логические операторы: | ||
| + | | Оператор | ||
| + | | -a | Логическое И. Объединяем несколько критериев поиска. | ||
| + | | -o | Логическое ИЛИ. Позволяем команде find выполнить поиск на основе одного из критериев поиска. | ||
| + | | -not или ! | Логическое НЕ. Инвертирует критерий поиска. | ||
| ===== type / типы ===== | ===== type / типы ===== | ||
| Строка 17: | Строка 53: | ||
| * В параметре поставляет найденные значения -exec < | * В параметре поставляет найденные значения -exec < | ||
| - | | + | |
| ====== Смена кодировки у множества файлов ====== | ====== Смена кодировки у множества файлов ====== | ||
| - | | + | <code bash> |
| find . \( -name ' | find . \( -name ' | ||
| Строка 29: | Строка 66: | ||
| find . -name " | find . -name " | ||
| + | </ | ||
| ====== Смена прав у файлов и каталогов ====== | ====== Смена прав у файлов и каталогов ====== | ||
| Строка 34: | Строка 72: | ||
| ===== Смена прав у каталогов ===== | ===== Смена прав у каталогов ===== | ||
| - | | + | <code bash> |
| Эта команда рекурсивно пройдется по текущему (точка " | Эта команда рекурсивно пройдется по текущему (точка " | ||
| - | | + | <code bash> |
| всем файлам - 644 | всем файлам - 644 | ||
| ===== Смена прав у файлов ===== | ===== Смена прав у файлов ===== | ||
| - | | + | <code bash> |
| Определенным файлам | Определенным файлам | ||
| | | ||
| Строка 49: | Строка 89: | ||
| Пример рекурсивного удаления всех git репозиториев | Пример рекурсивного удаления всех git репозиториев | ||
| - | | + | <code bash> |
| | | ||
| ====== Поиск необходимого контента в файлах ====== | ====== Поиск необходимого контента в файлах ====== | ||
| - | | + | <code bash> |
| Поиск бэкдоров или вирусов на сайте | Поиск бэкдоров или вирусов на сайте | ||
| Строка 59: | Строка 99: | ||
| ====== Вычислить размер папки, без подпапок ====== | ====== Вычислить размер папки, без подпапок ====== | ||
| - | | + | <code bash> |
| | | ||
| | | ||
| Строка 67: | Строка 107: | ||
| Ниже след команда позволит ее избежать | Ниже след команда позволит ее избежать | ||
| - | | + | <code bash> |
| find ./ -type f -name " | find ./ -type f -name " | ||
| find . -maxdepth 1 -name ' | find . -maxdepth 1 -name ' | ||
| find . -maxdepth 1 -name ' | find . -maxdepth 1 -name ' | ||
| + | find . -type f -name ' | ||
| | | ||
| ====== Удалить файлы созданные позднее 3 дней ====== | ====== Удалить файлы созданные позднее 3 дней ====== | ||
| | | ||
| - | | + | <code bash> |
| | | ||
| ====== Поиск каталога ====== | ====== Поиск каталога ====== | ||
| - | | + | <code bash> |
| | | ||
| ====== Замена таба на 4 пробела ====== | ====== Замена таба на 4 пробела ====== | ||
| + | |||
| + | <code bash> | ||
| | | ||
| - | | + | ====== Отображение всех путей вложенных папок ====== |
| + | |||
| + | <code bash> | ||
| + | $ export FINDPATH="/ | ||
| + | $ DEPTH=$(( $(find $FINDPATH | ||
| + | $ find $FINDPATH | ||
| + | </ | ||