« Recherche de .deb en fonction des tags | Home | wajig et gjig pour gérer les paquets .deb »

Suppression sélective de fichiers

posté par cep le 22 mars 2007

On veux supprimer tous les fichiers d’un répertoire, sauf un fichier (ou quelques fichiers) :

Aller dans le répertoire à travailler : cd ~/repertoire puis passer la commande :

find ./* ! -name “a_garder” -exec rm {} \;

Exemple pour effacer tous les fichiers sauf jeudi.txt :

find ./* ! -name “jeudi.txt” -exec rm {} \;

Efface tout les fichiers sauf jeudi.txt. Noter le ! qui signifie : Non

Exemple pour supprimer tous les fichiers dans le répertoire courant sauf jeudi.txt et lundi.txt

find ./* \( ! -name ‘jeudi.txt’ -a ! -name ‘lundi.txt’ \) -exec rm {} \;

Le -a signifie : AND

Voir man find : ” Le standard POSIX définit les parenthèses « ( », « ) », la négation « ! » et les
opérateurs « and » et « or » (« -a », « -o »).”

Topics: linux |

Comments

*
Pour prouver que vous n'êtes pas un bot, recopiez le code ci-dessous
Anti-Spam Image