La maggior parte degli utenti Linux conosce bene il comando find e i molti casi in cui può essere utilizzato. Oggi esamineremo un'alternativa per trovare il comando, chiamata fd .
fd , è uno strumento semplice, veloce e intuitivo pensato per funzionare più velocemente rispetto a trova . Non intende sostituire completamente trova , ma piuttosto ti offre un'alternativa facile da usare con prestazioni leggermente più veloci.
Alcune delle caratteristiche degne di nota di fd :
- Sintassi facile da usare – fd *pattern* invece di trova -iname *pattern* .
- Risultato colorato simile a quello del comando ls.
- Prestazioni veloci. I benchmark degli sviluppatori sono disponibili qui.
- Ricerca intelligente senza distinzione tra maiuscole e minuscole per impostazione predefinita e passa alla distinzione tra maiuscole e minuscole se il pattern contiene un simbolo maiuscolo.
- Non cerca nei file e nelle directory nascosti per impostazione predefinita.
- Non esamina .gitignore per impostazione predefinita.
- Consapevolezza Unicode.
Come installare fd in Linux
Vedremo come installare fd in diverse distribuzioni Linux.
Per Ubuntu e Debian distribuzioni basate, dovrai scaricare l'ultima versione di fd dalla pagina di rilascio e installarla utilizzando i seguenti comandi.
$ wget https://github.com/sharkdp/fd/releases/download/v7.3.0/fd-musl_7.3.0_amd64.deb $ sudo dpkg -i fd-musl_7.3.0_amd64.deb
Su altre distribuzioni Linux, puoi installare fd dal repository predefinito usando il gestore pacchetti come mostrato.
# dnf install fd-find [On Fedora] # pacman -S fd [On Arch Linux] # emerge -av fd [On Gentoo] # zypper in fd [On OpenSuse]
Come usare fd in Linux
Simile al comando trova, fd ha molti casi d'uso, ma iniziamo a controllare le opzioni disponibili:
# fd -h OR # fd --help
Diamo un'occhiata ad alcuni esempi. Puoi eseguire fd senza alcun argomento, l'output è molto simile al comando ls -R.
# fd
Nel prossimo fd esempi, userò un'installazione predefinita di WordPress situata in /var/www/html/
per cercare file e cartelle diversi.
Nell'esempio seguente, ho preso solo i primi 10 risultati per un output più breve del comando.
# fd | head
Diciamo che vogliamo trovare tutti i file jpg. Possiamo usare il “-e”
flag per filtrare in base all'estensione del file:
# fd -e jpg
Il “-e”
flag può essere utilizzato in combinazione con un motivo come questo:
# fd -e php index
Il comando precedente cercherà i file con estensione php e hanno la stringa "indice ” in essi:
Se desideri escludere alcuni risultati, puoi utilizzare il “-E”
segnala in questo modo:
# fd -e php index -E wp-content
Questo comando cercherà tutti i file con estensione php, contenenti la stringa “index ” ed escluderà i risultati da “wp-content ” directory.
Se vuoi specificare una directory di ricerca, devi semplicemente inserirla come argomento:
# fd <pattery> <directory>
Proprio come trova , puoi usare -x
o --exec
argomenti per eseguire un comando in parallelo con i risultati della ricerca.
Ecco un esempio in cui useremo chmod per modificare i permessi dei file immagine
# fd -e jpg -x chmod 644 {}
Quanto sopra troverà tutti i file con estensione jpg ed eseguirà chmod 644 <path-to-file>
.
Ecco alcune spiegazioni utili e l'utilizzo delle parentesi:
{}
– Un segnaposto che verrà modificato con il percorso del risultato della ricerca (wp-content/uploads/01.jpg ).{.}
– simile a{}
, ma senza utilizzare l'estensione del file (wp-content/uploads/01 ).{/}
:un segnaposto che verrà sostituito dal nome di base del risultato della ricerca (01.jpg ).{//}
:Directory principale del percorso rilevato (wp-content/uploads ).{/.}
:solo il nome di base, senza l'estensione (01 ).
Conclusione
Questa è stata una breve recensione del comando fd , che alcuni utenti potrebbero trovare più facile e veloce da usare. Come accennato in precedenza in questo articolo fd non intende sostituire completamente trova , ma piuttosto forniscono un utilizzo semplice, una ricerca più semplice e prestazioni migliori. Fd non occupa molto spazio ed è un ottimo strumento da avere nel proprio arsenale.