Команды для поиска файлов и каталогов в Linux

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

Команда Find

find путь образец_для_поиска

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

find путь [опции]

Путь – это директория, в которой нужно найти файл, опции – параметры поиска.

Данная команда имеет огромное количество опций, о которых можно прочитать на ее man-странице. Для этого необходимо ввести man find в командной строке.

Наиболее часто используется опция –name, при помощи которой можно искать файлы по сочетании определённых букв в названии.

Например, если в командной строке ввести

find . –name cat

в текущем каталоге запустится поиск всех файлов, которые содержат в названии «cat».

Основные опции команды find

-name — поиск файлов по указанному имени;

-user — поиск файлов, которые принадлежат конкретному пользователю;

-type — поиск файлов одного типа, например, d – каталог, f – обычный файл, L – символическая ссылка.

-size –n, +n, n — поиск файлов с размером больше(+) или меньше(-) или равное количество n единиц;

-mtime –n, +n — поиск файлов, которые были созданы или изменены менее чем(-) или более чем (+)n дней назад.

Команда Locate

Если find ищет файлы по набору заданных параметров в командной строке, то команда locate создает для хранения имен файлов собственную базу данных. Основное преимущество этой команды в том, что поиск осуществляется очень быстро.

Рекомендуется перед началом поиска ввести команду, которая обновит базу данных.

sudo updated

По умолчанию база данных обновляется каждую ночь стараниями службы cron.

Однако, базу данных можно обновить и вручную. Для этого нужно войти в систему под суперпользователем, и выполнить updatedb. Через несколько минут после введения команды произойдет обновление базы данных locate.

Чтобы запустился поиск, требуется указать в командной строке locate, имя файла и опции, параметры поиска. Например, если в названии файла содержится cat, то команда будет выглядеть вот так

locate cat [опции]

Команда which

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

which command_name

Команда whereis

С помощью этой команды выводится информация о том, где находятся файлы определенного пакета.

whereis package_name

Команда whatis

Утилита, которая позволяет искать названия файлов по ключевым словам в базах данных. Главный ее минус в том, что она выводит только те значения, которые точно совпадают с ключевыми словами.

whatis command_name

Детально изучить команды поиска файлов вы можете на наших курсах Linux.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *