GNU/Linux >> Znalost Linux >  >> Linux

Zapomeňte na příkaz locate, plocate je mnohem rychlejší alternativa

plocate najde všechny soubory v systému odpovídající danému vzoru. Je to locate na základě seznamů příspěvků, což umožňuje mnohem rychlejší vyhledávání na mnohem menším indexu.

Když potřebujete vyhledat nějaké soubory v Linuxu, můžete obvykle použít find nebo find příkazy. Nyní tedy máte novou alternativu s názvem plocate .

plocate funguje tak, že vytváří invertovaný index přes trigramy (kombinace tří bajtů) ve vyhledávacích řetězcích, což umožňuje rychle zúžit množinu kandidátů na velmi malý seznam namísto lineárního prohledávání každého záznamu.

Pojmenováno podle seznamů příspěvků, které jej inspirovaly, plocate byl napsán jako náhrada za mlocate . I když stále může používat updatedb pro vytvoření její databáze plocate můžete také použít plocate-build nástroj pro vytvoření indexu.

Na rozdíl od mlocate , když se prohledává více řetězců, plocate vrátí pouze soubory, které odpovídají všem hledaným řetězcům, nikoli jakýkoli soubor, který odpovídá byť jen jednomu řetězci.

Chcete-li ukázat, jak rychle se plocate je, vývojář zobrazí tento benchmark na domovské stránce nástroje, na které plocate je schopen najít 2 soubory z 27 milionů během několika milisekundi :

Nástroj si rychle získal popularitu. Například Fedora 36 plánuje používat plocate jako nového poskytovatele locate příkaz pro hledání souborů na souborových systémech.

Instalovat

Debian 11 Bullseye a novější, zpětné porty Debian 10 Buster, Ubuntu 21.04, 21.10 a novější:

sudo apt install plocate

Arch Linux a jeho deriváty:

sudo pacman -S plocate

Fedora:

sudo dnf install plocate

Jak používat plocate

Nyní můžete začít používat plocate . Nejprve musíte vytvořit jeho databázi (index souborů):

sudo updatedb

Spouštění plocate příkaz k vyhledání souboru je docela snadný a přímočarý. Chcete-li například vyhledat soubor s názvem backup.py byste napsali:

plocate backup.py

Pokud existují soubory, které nemůžete najít, jsou zde dva pravděpodobní viníci:

1. Nejprve zkontrolujte, zda byla databáze nedávno aktualizována. Většina uživatelů bude chtít použít updatedb plocate .

K dispozici je služba a časovač pro pravidelnou aktualizaci databáze. Můžete to povolit a automaticky spustí službu pomocí:

sudo systemctl enable plocate-updatedb.timer
sudo systemctl start plocate-updatedb.timer

2. Dalším důvodem, proč se soubor nezobrazuje, jsou obvykle oprávnění. Zkontrolujte, zda můžete najít soubory jako root, a pokud ano, problém je pravděpodobně v tom, že nemáte přístupová práva k adresáři až od kořenového adresáře.

Další informace o plocate příkaz v systému Linux, podívejte se na stránku jeho příručky.


Linux
  1. Rozdělte soubory na bloky pomocí vestavěného příkazu split

  2. 5 způsobů, jak použít příkaz move v Linuxu

  3. Praktické příklady příkazu Unzip v Linuxu

  1. Kam jdou soubory, když je vydán příkaz Rm?

  2. Rychle vyhledejte soubory v Linuxu pomocí příkazu Locate

  3. Alternativa k povelu tee bez STDOUT

  1. Jak používat příkaz Rsync v linuxu?

  2. Jak používat Linuxový příkaz find k hledání souborů

  3. Vyhledejte příkaz v Linuxu