Основные опции
Попробуйте искать и обрабатывать файлы в файловой системе, комбинируя различные опции команды `find`.
1. Базовый поиск
2. Условия по времени
3. Условия по размеру и правам
4. Действия
Сгенерированная команда:
Комбинируйте команды.
Описание:
`find` Запускает команду.
Комбинируйте эти опции, чтобы виртуально выполнять команды с помощью ИИ.
Логические операторы
Команда `find` предоставляет логические операторы для выполнения более точного поиска путем комбинирования нескольких условий.
Оператор | Описание | Пример |
---|---|---|
-and (или опускается) | Когда оба условия, левое и правое, истинны | `find . -name "*.txt" -and -size +1M` |
-or | Когда хотя бы одно из условий, левое или правое, истинно | `find . -name "*.log" -or -name "*.tmp"` |
-not (или !) | Когда условие ложно | `find . -not -name "*.txt"` |
( ) | Группировка условий (требует экранирования) | `find . \( -name "*.txt" -or -name "*.doc" \)` |
Приоритет операторов
Операторы команды `find` обычно оцениваются таким образом, что действия обрабатываются после выражений. Внутри условий можно использовать скобки (`()`) для явного указания приоритета. При использовании скобок их необходимо экранировать обратной косой чертой (`\`), так как они имеют специальное значение в оболочке.
Примеры использования
Попрактикуйтесь в поиске и управлении файлами с помощью практических примеров использования команды `find`.
Найти все файлы с расширением '.log' в текущем каталоге
find . -name "*.log"
Ищет все файлы, заканчивающиеся на `.log`, в текущем местоположении.
Найти файлы размером более 50 МБ
find /var -size +50M
Ищет все файлы размером более 50 МБ в каталоге `/var` системы.
Найти файлы 'conf', измененные за последние 7 дней
find . -name "*.conf" -mtime -7
Находит файлы `.conf`, измененные в течение последних 7 дней в текущем каталоге.
Найти все каталоги с правами доступа 777
find / -type d -perm 777
Ищет каталоги с правами, установленными на 777, по всей системе, чтобы проверить риски безопасности.
Удалить старые файлы '.tmp'
find /tmp -name "*.tmp" -mtime +30 -delete
Находит и удаляет все файлы `.tmp` старше 30 дней в каталоге `/tmp`.
Выполнить определенную команду для найденных файлов (chmod)
find . -name "*.sh" -exec chmod 755 {} \;
Предоставляет права на выполнение (755) всем файлам с расширением `.sh` в текущем каталоге.
Найти файлы размером более 1 ГБ, принадлежащие определенному пользователю
find /home -user user1 -size +1G
Ищет в каталоге `/home` файлы, принадлежащие `user1` и имеющие размер более 1 ГБ.