Com esborrar recursivament un tipus de fitxer en Linux en un directori i tots els seus subdirectoris

Esborrar recursivament un tipus de fitxer

Segur que en alguna ocasió heu comprovat que teniu un tipus de fitxer inútil en diverses carpetes, que ocupa poc espai però senzillament no ho voleu al vostre equip. Per exemple, en macOS es creen uns arxius .DS_Botiga que guarden informació sobre la icona d'una carpeta, la mida i posició, i en Windows existeixen els desktop.ini que són equivalents. Què fem si tenim un directori ple de subdirectoris i volem eliminar aquests o altres tipus d'arxius? El que hem de fer és esborrar recursivament tots i cada un d'ells.

Això és una cosa que podem fer amb tot tipus d'arxius. Per exemple, si tenim un disc dur ple de música, tenim un reproductor que ens ha baixat les caràtules i no volem tenir-les guardades, podem usar el mateix ordre que detallarem a continuació per eliminar-les. Això sí, tenint en compte que anem a esborrar recursivament arxius de directoris i els seus subdirectoris amb el terminal i que aquests es perdran per sempre, no està de més tenir cura i / o fer una prova abans d'eliminar tot el que vulguem eliminar.

Esborrar recursivament arxius d'un tipus des del terminal

Els comandaments per l'exemple dels arxius .DS_Store de macOS serien els següents:

cd ruta/a/directorio
find . -name '*.DS_Store' -type f -delete

De les ordres anteriors, el primer ens situarà a la carpeta on vulguem començar, és a dir, la que conté tots els arxius .DS_Store que vulguem eliminar. El segon és el que esborrarà tots els fitxers .DS_Store de la primera carpeta i les seves subcarpetes o directoris. Si el que volem és eliminar les fotos de les carpetes de música anteriorment esmentades, entre les cometes hem de posar el tipus d'extensió, com podria ser '* .jpg'.

Per ser 100% sincer, això és una cosa que faré el dia que deixi d'usar Cantata com a reproductor de música per defecte. Cantata crea i oculta uns arxius d'informació amb el mateix nom que les cançons que davant tenen un punt i una barra baixa (per exemple, ._Canción). Quan ho necessiti, la comanda que hauré de fer servir serà find. -name '._ *' -type f -delete.

T'ha servit aquesta petita guia per esborrar recursivament arxius des del terminal?

comanda grep
Article relacionat:
Comanda grep: potent eina per trobar text des del Terminal

Un comentari, deixa el teu

Deixa el teu comentari

La seva adreça de correu electrònic no es publicarà. Els camps obligatoris estan marcats amb *

*

*

  1. Responsable de les dades: Miguel Ángel Gatón
  2. Finalitat de les dades: Controlar l'SPAM, gestió de comentaris.
  3. Legitimació: El teu consentiment
  4. Comunicació de les dades: No es comunicaran les dades a tercers excepte per obligació legal.
  5. Emmagatzematge de les dades: Base de dades allotjada en Occentus Networks (UE)
  6. Drets: En qualsevol moment pots limitar, recuperar i esborrar la teva informació.

  1.   Sebastià Castro va dir

    Gràcies, però hi ha un error en el teu codi. Et mancat usar l'expressió regular '*', és a dir '* .DS_Store'. Et recomano que ho corregeixis. Doncs per als que tenen menys coneixement de bash, no els funcionarà el codi que vas donar. Salutacions!