Étiquette : rm

8 juillet 2019 /

Lorsque le nombre de fichiers dans un répertoire dépasse les 30000, cela peut constituer un problème.

Voici les étapes à suivre pour mener à bien cette tâche
find . -name '*.txt' -print >/tmp/fichiers_a_archiver
tar -cvzf fichiers_a_archiver.tar.gz --files-from /tmp/fichiers_a_archiver
find . -name '*.txt' | xargs rm -v

 

22 novembre 2015 /

J’ai rencontré cette petite erreur avec des répertoires contenant des millions de fichiers, qu’on vous demande de lister/supprimer, voici la solution la plus rapide.

find /chemin/repertoire -type f -name '*.log' | xargs rm -f

ou

find /chemin/repertoire -type f -name '*.log' -delete

ou encore :

find /chemin/repertoire -type f -name '*.log' -exec rm -rf {};

14 septembre 2015 /

Pour effacer tout le contenu d’un répertoire en épargnant un fichier:


cd repertoire
find . -maxdepth 1 -not -name fichier_a_conserver -exec rm -rf ‘{}’ \;

Pou effacer tout le contenu d’un dossier sauf les fichiers jpg:


cd dossier
find . -maxdepth 1 -not -name *.jpg -exec rm -rf ‘{}’ \;

3 août 2015 /

Pour supprimer tous les fichiers « .db » a partir du répertoire courant:

find . -type f -name "*db" -exec rm -f {} \;

Pour supprimer tous les fichiers « .db » à partir de la racine en demandant une confirmation:

find . -type f -name "*.db" -exec rm -i {} \;

Pour supprimer tous les repertoires se terminant par « db » à partir du répertoire courant:

find . -type d -name "*db" -exec rm -rf {} \;

28 juin 2015 /

Quand vous tombez sur un fichier commençant  par un tiret, si vous vous voulez le déplacer, le renommer ou le supprimer, il vous est impossible de le faire car celui-ci sera considérer comme une option.

Voici trois façon de contourner le problème:

Avec — devant le fichier:

mv -- -fichier

Par le numéro d’inode:

ls -i

find  . -inum "n° d'inode'" -exec mv {} nouveau_nom \;

Avec ./ devant le fichier:

mv ./--help toto