Как найти файлы в Linux с помощью командной строки

Введение

 найти Команда является одним из самых полезных инструментов в коллекции системного администрирования Linux. Это мощная команда, которая позволяет администраторам Linux рекурсивно фильтровать объекты на основе простого условного механизма. С помощью найти из командной строки позволяет легко находить файлы расширение, имя, или конкретное выражение.

Команда применяет ваше конкретное действие и представляет результаты всех файлов, которые соответствуют действию. Файлы могут быть расположены на основе разрешений, свидание, размер, тип, владение, а также Больше.

Это руководство покажет вам, как найти файлы в системе Linux. Готов? Давайте начнем!

Понимание синтаксиса команды поиска

Прежде чем мы покажем, как использовать команду Find, вы должны понять ее основной синтаксис. Все найти Выражения полезности записываются в виде:

$ find [options] [path …] [expression]

Вот;

  • Опции диктовать обработку параметров отладки, символических ссылок (символических ссылок) и методов оптимизации.
  • Дорожка определяет каталог (ы), где найти команда получит файлы.
  • в заключение, выражение, содержит параметры, действия и шаблоны поиска, разделенные операторами.

Пример команды Find с такими атрибутами будет выглядеть так:

$ Find -L / home / projects / -name "* .js" -exec chmod 644 {};

В команде выше -L  это опции написано, чтобы позволить найти команду следовать символическим ссылкам. Атрибут заставляет Find тщательно исследовать полное дерево каталогов в / Главная / Проекты /. / Главная / Проекты / это дорожка в команде это направляет найти искать файлы, заканчивающиеся выражение .JS. Команда find также получает указание изменить разрешение для указанных файлов на 644..

Поиск файлов по типу

Если вы хотите найти файл по типу, вы будете использовать параметр -тип с последующим описанием типа файла.

Вот некоторые из наиболее распространенных дескрипторов, используемых для указания типа файла:

  • б: блочные устройства
  • с: символьные устройства
  • f: a обычный файл
  • л: символическая ссылка
  • п: именованная труба (FIFO)
  • S: разъем

Например, чтобы найти каталоги в определенном месте, просто выполните команду:

$ Найти. -типа д

В качестве альтернативы, чтобы найти все символьные устройства в системе Linux, выполните команду:

$ Find / -type c

Чтобы изменить разрешения для всех файлов на 644 и разрешения для всех каталогов на 755, выполните команды:

$ Find / var / www / my_project -type f -exec chmod 0644 {};
$ Find / var / www / my_project -type d -exec chmod 0755 {};

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

Это один из самых популярных Linux Найти команду. Эта команда влечет за собой использование -имя вариант вместе с конкретным именем файла. Например, чтобы найти файл с названием Document.pdf в локации / Главная / hostadvice, вы просто выполняете команду:

$ Sudo find / home / hostadvice -type f -name document.pdf

Опция -имя можно изменить на -iname при выполнении поиска без учета регистра. Например, приведенная выше команда может быть выполнена как:

$ Sudo find / home / hostadvice -type f -имя document.pdf

Это найдет документ, который соответствует имени DOCUMENT.pdf, Document.pdf и т. Д.

Поиск файла по расширению

Это похоже на поиск файла только по имени, когда имя заменяется выражением. Найти все .log.gz файлы в каталоге / Вар / Журнал / Nginx, выполнить команду;

$ Find / var / log / nginx -type f -name ‘* .log.gz’

С другой стороны, при поиске файлов, которые не соответствуют выражению * .log.gz, добавить -не параметр как раз перед -имя вариант.

$ find / var / log / nginx -type f -not -name ‘* .log.gz’

Запись: при использовании символа подстановки вы должны экранировать символ звездочки, используя обратную реакцию, или заключить в кавычки выражение Это не позволяет оболочке Linux интерпретировать подстановочный знак.

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

Найти файл по его размеру просто. Просто передайте параметр; -размер, вместе с форматом размера. Некоторые из самых популярных суффиксов размера включают в себя;

  • б: 512-байтовые блоки (по умолчанию)
  • с: байтов
  • Г: гигабайт
  • М: мегабайт
  • K: килобайт
  • ш: двухбайтовые слова

Например, чтобы найти файл размером 1024 байта в каталоге «/ tmp», выполните команду ниже:

$ Find / tmp -type f -size 1024c

Приведенная выше команда будет соответствовать всем файлам, размер которых не превышает 1024 байта. Для поиска файлов размером более 1024 байт используйте + как раз перед размером файла. С другой стороны, чтобы найти файлы размером менее 1024 байт, используйте минус подписать перед размером файла. Например, чтобы найти файлы размером менее 1M в вашем текущем рабочем каталоге, выполните команду:

$ Найти. тип f -размер -1M

Команда размера позволяет вам находить файлы, которые находятся в пределах диапазона. Например, чтобы найти файлы размером от 2 до 3 МБ, выполните команду:

$ найти. тип f -size + 2M -size3M

Поиск файла по дате его изменения

Кроме того, команда find позволяет находить файлы по времени их последнего доступа, изменения или изменения. Как и в предыдущем случае, мы можем использовать знаки минус и плюс, чтобы указать меньше или больше чем.

Например, если вы внесли изменения в конфигурационный файл devcot в последние пять дней и не могу вспомнить конкретное имя файла. Вы можете искать все файлы в каталоге /etc/dovecot/conf.d/ это было изменено в течение этого времени. Найдите файл, заканчивающийся на .conf, используя команду ниже:

$ Find /etc/dovecot/conf.d -name "* .conf" -mtime 5

Еще лучше, вы можете использовать -daystart возможность фильтровать файлы на основе дня, когда они были изменены. Чтобы найти все файлы в каталоге /дом, которые были изменены месяц назад или дольше, запустите команду:

 $ find / home -mtime +30 -daystart

Поиск файла по разрешениям

Чтобы найти файл по разрешению, мы используем параметр -химическая завивка. Например, чтобы найти файлы с разрешением 775 внутри каталога / Var / WWW / HTML.

$ find / var / www / html -perm 644

Числовой режим в приведенной выше команде может начинаться с префикса слэш или минус символ. Если в качестве префикса используется косая черта, одна группа, пользователь или другие категории должны обладать как минимум битами, указанными для соответствия этого файла. Например:

$ Найти. / 444

Эта команда доставит результаты файлов, которые имеют разрешения на чтение для группы, пользователя или других категорий. Когда знак минуса используется для добавления префикса к числовому значению, для каждого файла должны быть указаны оговоренные биты.

Например, следующая команда найдет файлы, которые имеют права на чтение и запись для соответствующего владельца, но другие пользователи и группа имеют только права на чтение:

$ Найти. -perm -664

Поиск файла его владельцем

Здесь вы можете использовать -группа а также -пользователь чтобы найти файлы, принадлежащие группе или пользователю соответственно. Например, для поиска каталогов и файлов, принадлежащих пользователю с именем hostadvice, выполните команду ниже:

$ Find / -user hostadvice

Кроме того, для поиска файлов, принадлежащих WWW-данные и измените право собственности на эти файлы Nginx, выполнить команду:

$ find / -user www-data -type f -exec chown nginx {};

Поиск и удаление файла

Удалить файл так же просто, как добавить параметр, как суффикс выражения соответствия файла. Всегда разумно убедиться, что результаты относятся к файлам, которые вы хотите удалить. Например, чтобы удалить файлы, которые заканчиваются .температура в каталоге / Вар / Журнал /, выполните команду ниже:

$ find / var / log / -name `* .temp` -delete

Вывод

Это оно! Мы выделили наиболее часто используемые команды поиска Linux на основе ряда критериев. Теперь вы можете использовать команду, чтобы найти любой файл в вашей системе Linux.

Проверьте эти 3 лучших хостинга Linux

FastComet

Стартовая цена:
$ 2,95


надежность
9,7


ценообразование
9,5


Дружественный интерфейс
9,7


Служба поддержки
9,7


особенности
9,6

Читать отзывы

Посетите FastComet

Hostinger

Стартовая цена:
$ 0,99


надежность
9,3


ценообразование
9,3


Дружественный интерфейс
9,4


Служба поддержки
9,4


особенности
9,2

Читать отзывы

Посетить Hostinger

ChemiCloud

Стартовая цена:
$ 2,76


надежность
10


ценообразование
9,9


Дружественный интерфейс
9,9


Служба поддержки
10


особенности
9,9

Читать отзывы

Посетите ChemiCloud

Связанные статьи с практическими рекомендациями

  • Как файлы и папки с помощью командной строки в системах Linux
    новичок
  • Как настроить SSH на CentOS 7 VPS из Windows-клиента
    промежуточный
  • Как настроить параметры KeepAlive для Apache, работающего на Ubuntu 18.04 VPS
    промежуточный
  • Как настроить WordPress Multisite в Ubuntu 18.04 с веб-сервером Apache
    промежуточный
  • Как установить и настроить Zen Cart на Ubuntu 18.04 VPS или выделенном сервере
    промежуточный
Jeffrey Wilson Administrator
Sorry! The Author has not filled his profile.
follow me