Примери за използване на командата Locate за начинаещи

Примери за използване на командата Locate за начинаещи

Събота, 29 април 2017 22:27

Излишно е да казвам, че find несъмнено е една от най-популярните команди и мощни помощни програми за команден ред за намиране на файлове в Linux, но не е достатъчно бърз, за ​​да доведе до незабавни резултати. Ако искате да намерите файл на вашия компютър с помощта на командния ред и скоростта стане основен приоритет, тогава има друга команда, която можете да използвате: Намерете.

В тази статия ще научите за използването на командата locate от лесни за разбиране примери. Моля, обърнете внимание, че всички инструкции/примери, предоставени тук, са тествани на Ubuntu 16.04 LTS и на място използвахме версия 0.26.

1. Как да използвам командата locate в Linux

Командата locate е много лесна за използване. Всичко, което трябва да направите, е да въведете името на файла, който искате да намерите .

Например, ако трябва да намерите всички файлове, които имат низа „dir2“ в името си, можете да направите това, като използвате locate, както следва:

Забележка: Командата 'locate dir2' (без звездичка) ще действа по същия начин като locate имплицитно, т.е. ще замени името на прохода (кажете име) с * name *.

2. Как работи locate или защо е толкова бързо

Причината locate е толкова бърза, че не чете файловата система, за да намери файл или директория. Всъщност locate се отнася до базата данни (изготвена от updatedb), за да се намери това, което потребителят търси и въз основа на това търсене изведе файла.

Това е добър подход, но има своите недостатъци. Основният проблем е, че след всеки нов файл или директория, създадени в системата, трябва да актуализирате базата данни на инструмента, за да работи правилно. В противен случай командата няма да може да намери файлове/директории, създадени след последната актуализация на базата данни.

Например, ако се опитам да намеря файлове с имена, съдържащи низа 'tosearch' в "изтегляне", тогава моята директория дава само един резултат

Но когато се опитвам да направя същото търсене с командата locate, това не дава резултат.

Това означава, че базата данни за намиране не е актуализирана след създаването на файла от системата. Така че нека актуализираме базата данни, която може да бъде създадена с командата locate. Ето как го правите:

И сега, когато актуализирах командата locate, тя показва изходните файлове:

Освен това, след търсенето файлът или папката са изтрити, трябва да се уверите, че базата данни за търсене е актуализирана, в противен случай командата ще продължи да показва този файл.