Утилиты CLI, навигация по файловой системе: команда locate
Команда locate
осуществляет поиск всех файлов и каталогов, содержащих компонент имени, указанный в качестве аргумента и осуществляет вывод содержимого найденных каталогов. Так, в ответ на команду
$ locate zsh
будет выведен список вроде следующего:
/bin/zsh /bin/zsh-4.0.6 /etc/zsh /etc/zsh/zlogin /etc/zsh/zshenv /etc/zsh/zshrc
и так далее. Команда locate
при этом обращается к базе данных, расположенной в каталоге вроде /var/spool/locate/locatedb
или /var/db/locate.database
(точный имя и путь в разных системах могут варьировать). По умолчанию эта база данных пуста -- и перед использованием команды locate
должна быть наполнена содержанием. Для этого предназначен сценарий /usr/bin/updatedb
или, в иных системах, /usr/libexec/locate.updatedb
(обращаем внимание на полный путь во втором случае -- поскольку каталоги типа /usr/libexec/
в переменной PATH
обычно не указывается, именно таким способом и следует его запускать). Сценарий этот извлекает сведения из базы данных установленных пакетов -- например, в BSD-системах, /var/db/pkg
. При активной доустановке программ база данных для команды locate
нуждается в периодическом обновлении (за обновление базы данных установленных пакетов обычно отвечает система пакетного менеджмента данного дистрибутива или ОС).
Содержание . .