Il comando plocate come alternativa più veloce da individuare in Linux
Il comando plocate trova tutti i file nel sistema che corrispondono al modello specificato, fornendo ricerche molto più veloci su un indice più piccolo.
Quando devi cercare alcuni file in Linux, in genere potresti utilizzare i comandi find
o locate
. Quindi ora hai una nuova alternativa chiamata plocate
.
plocate
funziona creando un indice invertito sui trigrammi (combinazioni di tre byte) nelle stringhe di ricerca, che gli consente di restringere rapidamente l'insieme di candidati a un piccolo elenco invece di scansionare linearmente ogni voce.
Prende il nome dagli elenchi di inserzioni che lo hanno ispirato, il comando plocate
mira a essere un sostituto immediato di mlocate
. Sebbene possa ancora utilizzare updatedb
per creare il proprio database, plocate
può anche utilizzare l'utilità plocate-build
per creare un indice.
A differenza di mlocate
, quando vengono cercate più stringhe, plocate
restituisce solo i file che corrispondono a tutte le stringhe di ricerca, anziché qualsiasi file che corrisponde anche a una sola stringa.
Per mostrare quanto sia veloce il comando plocate
, lo sviluppatore offre questo benchmark sulla home page dello strumento in cui plocate
può trovare due file su 27 milioni in pochi millisecondi:
Lo strumento ha rapidamente guadagnato popolarità. Ad esempio, Fedora 36 prevede di utilizzare locate
come nuovo fornitore del comando locate
per trovare file sui file system.
Installare
Debian 11 Bullseye e versioni successive, backport Debian 10 Buster, Ubuntu 21.04, 21.10 e 22.04:
sudo apt install plocate
Arch Linux e i suoi derivati:
sudo pacman -S plocate
Fedora:
sudo dnf install plocate
Come utilizzare collocare
Ora puoi iniziare a utilizzare plocate
. Per prima cosa, devi creare il suo database (indice dei file):
sudo updatedb
Lanciare il comando plocate
per cercare un file è semplice. Ad esempio, per cercare un file denominato backup.py
digiterai:
plocate backup.py
Se ci sono file che non riesci a trovare, ci sono due probabili colpevoli:
1. Innanzitutto, controlla che il database sia stato aggiornato di recente. La maggior parte degli utenti vorrà utilizzare updatedb
di plocate.
C'è un servizio e un timer per aggiornare regolarmente il database. Puoi abilitarlo e attiverà automaticamente il servizio con:
sudo systemctl enable plocate-updatedb.timer
sudo systemctl start plocate-updatedb.timer
2. L'altro motivo per cui un file non viene mostrato sono in genere i permessi. Controlla se riesci a trovare i file come root e, se puoi, il problema è molto probabile che non disponi dei diritti di accesso alla directory dalla root.
Per ulteriori informazioni sul comando plocate
in Linux, consulta la relativa pagina del manuale.