Настя и сборник весёлых историй
Оглавление:
- Установка
locate(команда locate не найдена) - Установите
locateв Ubuntu и Debian - Установите
locateна CentOS и Fedora - Как
locateработу - Как использовать команду
locate - Вывод
Одна из наиболее распространенных операций при работе в Linux - поиск файлов и каталогов. В системах Linux есть несколько команд, которые позволяют вам искать файлы с наиболее часто используемыми командами
find
и
locate
.
Команда
locate
- это самый быстрый и простой способ поиска файлов и каталогов по их именам.
В этом уроке мы объясним, как использовать команду
locate
.
Установка
locate
(команда locate не найдена)
В зависимости от дистрибутива и от того, как была предоставлена система, пакет locate может быть или не быть предварительно установлен в вашей системе Linux.
Чтобы проверить, установлена ли в вашей системе утилита
locate
, откройте ваш терминал, введите
locate
и нажмите
Enter
. Если пакет установлен, система покажет
locate: no pattern to search for specified
, в противном случае вы увидите что-то вроде
locate command not found
.
Если
locate
не установлен, вы можете легко установить его с помощью менеджера пакетов вашего дистрибутива.
Установите
locate
в Ubuntu и Debian
sudo apt update
sudo apt install mlocate
Установите
locate
на CentOS и Fedora
Как
locate
работу
Команда
locate
выполняет поиск заданного шаблона в файле базы данных, сгенерированном командой
updatedb
. Найденные результаты отображаются на экране, по одному на строку.
Во время установки пакета mlocate создается задание cron, которое запускает команду
updatedb
каждые 24 часа. Это гарантирует, что база данных регулярно обновляется. Для получения дополнительной информации о работе cron проверьте файл
/etc/cron.daily/mlocate
.
Базу данных можно обновить вручную, выполнив команду
updatedb
от имени пользователя root или пользователя с правами sudo:
sudo updatedb
Процесс обновления займет некоторое время, в зависимости от количества файлов и каталогов и скорости вашей системы.
Файлы, созданные после обновления базы данных, не будут отображаться в результатах поиска.
По сравнению с более мощной командой
find
которая выполняет поиск в файловой системе, функция
locate
работает намного быстрее, но не имеет многих функций и может выполнять поиск только по имени файла.
Как использовать команду
locate
Синтаксис команды
locate
выглядит следующим образом:
locate PATTERN…
В своей основной форме, когда используется без каких-либо опций, команда
locate
напечатает абсолютный путь ко всем файлам и каталогам, который соответствует шаблону поиска и для которого пользователь имеет разрешение на чтение.
Например, для поиска файла с именем
.bashrc
вы должны набрать:
locate.bashrc
Вывод будет включать имена всех файлов, содержащих строку
.bashrc
в их именах:
/etc/bash.bashrc /etc/skel/.bashrc /home/linuxize/.bashrc /usr/share/base-files/dot.bashrc /usr/share/doc/adduser/examples/adduser.local.conf.examples/bash.bashrc /usr/share/doc/adduser/examples/adduser.local.conf.examples/skel/dot.bashrc
Файл
/root/.bashrc
не будет показан, потому что мы
/root/.bashrc
команду как обычный пользователь, у которого нет прав доступа к каталогу
/root
.
Если список результатов длинный, для лучшей читаемости вы можете направить вывод в команду
less
:
locate.bashrc | less
Команда
locate
также принимает шаблоны, содержащие такие символы, как подстановочный знак
*
. Когда шаблон не содержит символов-заглушки, команда выполняет поиск
*PATTERN*
, поэтому в предыдущем примере отображались все файлы, содержащие шаблон поиска в своих именах.
Подстановочный знак - это символ, используемый для обозначения нуля, одного или нескольких символов. Например, для поиска всех файлов
.md
в системе вы должны использовать:
locate *.md
Чтобы ограничить результаты поиска, используйте параметр
-n
а затем количество результатов, которые вы хотите отобразить. Например, следующая команда будет искать все файлы
.py
и отображать только 10 результатов:
locate -n 10 *.py
По умолчанию
locate
выполняет поиск с учетом регистра. Опция
-i
(
--ignore-case
) указывает, что игнорировать регистр и выполнять поиск без учета регистра.
locate -i readme.md
/home/linuxize/p1/readme.md /home/linuxize/p2/README.md /home/linuxize/p3/ReadMe.md
Чтобы отобразить количество всех подходящих записей, используйте параметр
-c
(
--count
). Следующая команда вернет номер всех файлов, содержащих в именах
.bashrc
:
locate -c.bashrc
6
По умолчанию команда
locate
не проверяет, существуют ли найденные файлы в файловой системе. Если вы удалили файл после последнего обновления базы данных, если файл соответствует шаблону поиска, он будет включен в результаты поиска.
Чтобы отобразить только имена файлов, которые существуют во время запуска
locate
используйте опцию
-e
(
--existing
). Например, следующее вернет только существующие файлы
.json
:
locate -e *.json
locate --regex -i "(.mp4|\.avi)"
Вывод
Команда
locate
ищет в файловой системе файлы и каталоги, чье имя соответствует заданному шаблону. Синтаксис команды легко запомнить, а результаты отображаются практически мгновенно.
Для получения дополнительной информации обо всех доступных параметрах команды
locate
введите
man locate
в вашем терминале.
Как использовать команду apt в Linux
apt - утилита командной строки для установки, обновления, удаления и иного управления пакетами deb в Ubuntu, Debian и связанных дистрибутивах Linux.
Как использовать команду Linux Linux для передачи файлов
FTP (File Transfer Protocol) - это стандартный сетевой протокол, используемый для передачи файлов в удаленную сеть и из нее. В этом руководстве мы покажем вам, как использовать команду linux ftp на практических примерах.
Как использовать команду linux sftp для передачи файлов
SFTP (SSH File Transfer Protocol) - это защищенный файловый протокол, используемый для доступа, управления и передачи файлов по зашифрованному SSH-транспорту. В этом уроке мы покажем вам, как использовать команду Linux `sftp`.







