59 votes

Comment utiliser le Terminal pour supprimer tous les dossiers .svn de manière récursive ?

Quelle commande puis-je taper dans le Terminal pour pouvoir supprimer toutes les .svn des dossiers d'un dossier (et de tous les sous-répertoires) mais pas de supprimer autre chose ?

127voto

Lark Points 1640
cd to/dir/where/you/want/to/start
find . -type d -name '.svn' -print -exec rm -rf {} \;
  • Utilisez find, qui fait de la récursion
  • dans le répertoire actuel .
  • Le type de fichier est répertoire
  • le nom du fichier est .svn
  • imprimer ce qui correspond à ce point (les répertoires .svn)
  • exécuter la commande rm -rf (thing found from find) . le {} est un caractère de remplacement pour l'élément entité trouvée
  • le ; indique à find que la commande pour exec est terminée. Puisque le Shell a aussi une idée de ce qu'est ;, vous devez l'échapper avec \ afin que le Shell ne fasse rien de spécial avec, et passe simplement à find

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X