fd: una alternativa senzilla i ràpida per trobar l'ordre


La majoria dels usuaris de Linux estan ben familiaritzats amb l'ordre find, anomenada fd.

fd és una eina senzilla, ràpida i fàcil d'utilitzar destinada a funcionar més ràpidament que a trobar. No està pensat per substituir completament la recerca, sinó que us ofereix una alternativa fàcil d'utilitzar que funciona una mica més ràpid.

Algunes de les característiques notables de fd:

  • Sintaxi fàcil d'utilitzar: fd *pattern* en lloc de find -iname *pattern*.
  • La sortida amb colors és similar a la de l'ordre ls.
  • Rendiment ràpid. Els punts de referència del desenvolupador estan disponibles aquí.
  • Cerca intel·ligent que no distingeix entre majúscules i minúscules de manera predeterminada i canvia a majúscules si el patró conté un símbol en majúscules.
  • No cerca fitxers i directoris ocults per defecte.
  • No consulta .gitignore per defecte.
  • Coneixement d'Unicode.

Com instal·lar fd a Linux

Veurem com instal·lar fd en diferents distribucions de Linux utilitzant el gestor de paquets predeterminat, tal com es mostra.

$ sudo apt install fd-find    [On Debian, Ubuntu and Mint]
$ sudo yum install fd-find    [On RHEL/CentOS/Fedora and Rocky Linux/AlmaLinux]
$ sudo emerge -a sys-apps/fd  [On Gentoo Linux]
$ sudo pacman -S fd           [On Arch Linux]
$ sudo zypper install fd      [On OpenSUSE]  
$ sudo apk add fd             [On Alpine Linux]    

Com utilitzar fd a Linux

De manera similar a l'ordre find, fd té molts casos d'ús, però comencem per comprovar les opcions disponibles:

# fd -h
OR
# fd --help

Fem una ullada a alguns exemples. Podeu executar fd sense cap argument, la sortida és molt semblant a l'ordre ls -R.

# fd

En els següents exemples de fd, utilitzaré una cerca predeterminada per a diferents fitxers i carpetes.

A l'exemple següent, només he pres els 10 primers resultats per a la sortida més curta de l'ordre.

# fd | head

Suposem que volem trobar tots els fitxers jpg. Podem utilitzar el senyalador \-e” per filtrar per extensió de fitxer:

# fd -e jpg

El senyalador \-e” es pot utilitzar en combinació amb un patró com aquest:

# fd -e php index

L'ordre anterior buscarà fitxers amb extensió php i hi tindrà la cadena \index:

Si voleu excloure alguns resultats, podeu utilitzar la marca \-E” com aquesta:

# fd -e php index -E wp-content

Aquesta ordre buscarà tots els fitxers amb extensió php, que continguin la cadena \index i exclourà els resultats del directori \wp-content.

Si voleu especificar un directori de cerca, només heu de donar-lo com a argument:

# fd <pattery> <directory>

Igual que find, podeu utilitzar els arguments -x o --exec per executar l'ordre paral·lela amb els resultats de la cerca.

Aquí teniu un exemple on utilitzarem chmod per canviar els permisos dels fitxers d'imatge

# fd -e jpg -x chmod 644 {}

L'anterior trobarà tots els fitxers amb extensió jpg i executarà chmod 644 .

Aquí hi ha algunes explicacions útils i l'ús dels claudàtors:

  • {}: un marcador de posició que es canviarà amb el camí del resultat de la cerca (wp-content/uploads/01.jpg).
  • {.}: semblant a {}, però sense utilitzar l'extensió de fitxer (wp-content/uploads/01).
  • {/}: un marcador de posició que se substituirà pel nom base del resultat de la cerca (01.jpg).
  • {//}: directori principal del camí descobert (wp-content/uploads).
  • {/.}: només el nom base, sense l'extensió (01).

Aquesta va ser una breu revisió de l'ordre fd, que alguns usuaris poden trobar més fàcil d'utilitzar i més ràpid. Com s'ha esmentat anteriorment en aquest article, fd no pretén substituir completament la cerca, sinó que proporciona un ús senzill, una cerca més fàcil i un millor rendiment. Fd no ocupa gaire espai i és una bona eina per tenir al vostre arsenal.