Oct
29

Suppression récursive de tous les fichiers portant un nom donné

Une petite ligne de commande utile lorsqu’on souhaite supprimer tous les dossiers .svn après avoir copié le contenu d’une copie locale. En principe, il faudrait utiliser svn export, mais il peut arriver que la copie locale contienne aussi des fichiers non subversionnés que l’on souhaite copier également (ex : AMi2).

1
find . -name .svn -print0 | xargs -0 rm -rf
find . -name .svn -print0 | xargs -0 rm -rf

Quelques explications sur les arguments :
-print0 vrai ; affiche le nom complet du fichier sur la sortie standard, suivi d’un caractère nul. Ceci permet aux fichiers dont le nom contient un saut de ligne, d’être correctement interprétés par les programmes utilisant les données en sortie de find.
-0 Les noms des fichiers d’entrée sont terminés par un caractère nul au lieu d’une espace blanche, et les apostrophes, guillemets et backslashs ne sont pas spéciaux (chaque caractère est utilisé littéralement). Désactive la chaîne de fin de fichier, qui est traitée comme tout autre argument. Utile quand des arguments sont susceptibles de contenir des espaces blanches, des marques de protection ou des backslashs. L’option -print0 de GNU find produit une sortie convenant à ce mode.

Référence : http://hello.kwiti.net/154-suppression-des-fichiers-svn-recursif.html



Poster un commentaire

Edito

Bienvenue sur Mémorandom.

Mémorandom est le blog de 2 développeurs web, Appo et Nico.

Vous y trouverez des informations sur différents domaines touchant de près ou de loin au développement web

Tutoriels Yii Framework

Nos derniers articles

Blogs Dev

Liens

Étiquettes