Как найти файл в Linux
Продолжаем оттачивать мастерство администрирования Linux. Сегодня о том, как научится эффективно искать файлы.
Комбинирование условий поиска find
Команда find позволяет использовать такие логические операторы, как OR, AND и NOT. Например, следующая команда найдет в директории /opt все файлы, которые начинаются на 'pass' и те, размер которых превышает 1000 Кб:
find /opt -name 'pass*' -or -size +1000k
Использование команды locate для поиска файлов в Linux
Для использования locate вам сначала может понадобиться запустить программу updatedb. Затем можно перейти к поиску. Например, найдем все конфигурационные файлы .conf:
locate -r '[^/]*\.conf'
Поиск файлов по заданным правам доступа
Найдем в директории /home/lilo все файлы, которые не имеют прав 755:
find /home/lilo/ -type f ! -perm 755
А теперь все те, которые имеют права 777:
find /home/lilo/ -type f -perm 777
Сортировка файлов по времени доступа и создания в Linux
Просмотрим список всех файлов текущей директории, отсортированных по дате последнего доступа и дате создания:
ls -ltr
Поиск файлов по времени создания
Найдем все файлы, созданные в директории /tmp за последние 20 минут:
find /tmp/ -mmin -20
Выполнение операций в отношении найденных файлов
Найдем все файлы, имеющие название file (с учетом регистра) и изменим им права на 777:
find /tmp -iname file -exec chmod 777 {} \;
Поиск файлов по размеру
В директории /var/log найдем все файлы, объемом в 8 Кб:
find /var/log/ -size 8k
Комментарии
pomodor
23 января, 2017 - 21:10
Вот анальные хомячки Микрософта любят говорить о преимуществах гуя над командной строкой. Тогда вам такой вопрос: как вы в своем гуе сделаете это:
find /tmp -iname file -exec chmod 777 {} \;
gundenaf
23 января, 2017 - 21:24
Имхо, гуй нужен для чего-то обыденного (вроде кнопок Вперед/Назад) или для выполнения тех же команд терминала, спрятанных в нажатие. Я бы старался максимально, где только можно использовать интерфейс, так как, увы, у нас любят, чтобы писались программы с двумя кнопками — "Сделать все" и "Закрыть".
Но без терминала никак, без шуток. И это даже хорошо. И еще хорошо, что все же, не всем он нужен.
Комментировать