Linux поиск файла с помощью команды find
Команда find в Linux и Unix-подобных операционных системах, одна из часто используемых и наиболее важных утилит командной строки.
Команда find используется для поиска и определения местоположения в списке файлов и каталогов на основе условий, которые вы задаете для поиска файлов.
С помощью команда find вы можете например, искать файлы по разрешениям, пользователям, группам, типам файлов, дате, размеру и другим возможным критериям используя в различных условиях.
Взглянем на различные примеры применения команды find в linux, которые чаще всего используются на практике.
Поиск файлов по имени в текущем каталоге
Чтобы найти все файлы с именем linuxtraining.txt в текущем рабочем каталоге используйте команду ниже.
# find . -name linuxtraining.txt ./linuxtraining.txt
Поиск файлов в домашнем каталоге
Будут найдены все файлы в каталоге /home с именем linuxtraining.txt .
# find /home -name linuxtraining.txt /home/linuxtraining.txt
Поиск файлов по имени и без учета регистра
Будут найдены в каталоге /home все файлы с именем linuxtraining.txt, которые содержат как заглавные, так и строчные буквы.
# find /home -iname linuxtraining.txt ./linuxtraining.txt ./LinuxTraining.txt
Поиск каталога по имени
Будут найдены все каталоги с именем bin в /usr.
# sudo find /usr -type d -name bin /usr/local/bin /usr/bin /usr/share/mc/bin
Поиск файлов по расширению
Будут найдены все файлы с расширением .py в текущем рабочем каталоге.
# find . -type f -name *.py ./linuxtrainingt.py ./login.py ./index.py
Поиск файлов доступные только для чтения
Будут найдены все файлы, у которых права доступа только для чтения.
# find / -perm /u=r
Поиск исполняемых файлов
Будут найдены все исполняемые файлы.
# find / -perm /a=x
Найти и удалить несколько файлов.
Будут найдены и удалены несколько файлов, таких как .mp3.
# find . -type f -name "*.mp3" -exec rm -f {} \;
Поиск пустых файлов
Будут найдены все пустые файлы по определенному пути.
# find /tmp -type f -empty
Поиск пустых каталогов
Будут найдены все пустые каталоги по определенному пути.
# find /tmp -type d -empty
Поиск скрытых файлов
Чтобы найти все скрытые файлы, используйте команду ниже.
# find /tmp -type f -name ".*"
Поиск файлов принадлежащий определенному пользователю
Для того, чтобы найти все или отдельные файлы в корневой директории, называемые linuxtraining.txt, пользователя root используйте команду ниже.
# find / -user root -name linuxtraining.txt
Поиск файлов на основе группы
Чтобы найти все файлы, принадлежащие группе Manager, в каталоге /home выполните следующую команду.
# find /home -group manager
Найти конкретные файлы пользователя.
Чтобы найти все .txt файлы пользователя Alex в /home используйте команду ниже.
# find /home -user alex -iname "*.txt"
Поиск файлов, измененные за последние 50 дней
Будут найдены все файлы, измененные в течении последних 50 дней.
# find / -mtime 50
Поиск файлов, к которым осуществлялся доступ за последние 50 дней
Будут найдены все файлы, к которым обращались в течении последних 50 дней.
# find / -atime 50
Поиск файлов, измененные в период от 50 до 100 дней
Будут найдены все файлы, которые были изменены более 50 дней и менее 100 дней назад.
# find / -mtime +50 -mtime -100
Поиск файлов, измененные за последний час
Будут найдены все файлы, которые были изменены за последний час.
# find / -cmin -60
Поиск файлов, к которым осуществлялся доступ за последний час
Будут найдены все файлы, к которым осуществлялся доступ за последний 1 час.
# find / -amin -60
Поиск файлов с определенным размером
Чтобы найти все файлы размером 50 МБ , используйте команду ниже.
# find / -size 50M
Найдите файлы в диапазоне размеров
Чтобы найти все файлы размером более 50 МБ и менее 100 МБ.
# find / -size + 50M -size -100M
Найти определенные файлы и удалить
Найдите все файлы .mp3 размером более 10 МБ и удалите их с помощью одной команды.
# find / -type f -name *.mp3 -size +10M -exec rm {} \;
Вот и все, мы заканчиваем этот пост. В нашей следующей статье мы подробно обсудим другие команды Linux с практическими примерами. Сообщите нам свое мнение об этой статье, используя наш раздел комментариев.