Supprimer récursivement les dossiers .svn sous Windows

Pour une raison ou pour une autre, on peut parfois être amené à récupérer la totalité d'un dépôt .svn sans passser par la commande export. Notre ami Korben a publié un article dernièrement concernant la suppression des dossiers .svn sous Linux.

Ce que je vous propose ici est la même manipulation, mais sous Windows. Certes, des petits malins pourraient se dire qu'il suffit d'installer CygWin (un environnement Linux pour Windows), mais installer tout cela pour uniquement une commande, qui se réalise très bien en Batch... :)

Voici donc la très précieuse commande :

for /r repository %f in (.svn) do rd /S /Q "%f"

Quelques explications ? Allez, je me lance ! Tout d'abord, on effectue une boucle for de manière récursive, lui demandant de mettre dans la variable %f tous les fichiers rencontrés qui satisfont la condition .svn. Ensuite, on supprime le répertoire correspondant (rd, pour remove directory). On veut supprimer le répertoire lui-même ainsi que tous ses dossiers et sous-dossiers (option /s), et ne pas demander de confirmation à l'utilisateur (/q).

Bref, rien de bien compliqué, à condition toutefois de connaître la commande vitale pour les batchs, équivalent du man Linux : commande /?.

Le Batch Windows est souvent obscurci par les fichiers Shell Linux. Mais, il permet de faire cependant des choses intéressantes. :)

Mots-clefs : ,

5 réactions sur cet article.

  1. Metallizer says:

    Merci énormément pour cette commande ! Elle m'a été d'une très grande aide et j'en ai fait un script paramétrable que j'appelle au besoin. ^^

  2. PA says:

    @Metallizer : n'hésite pas à partager ton script alors :)

    Sinon, je ne dirais pas que "commande /?" est l'equivalent du man de linux, mais plutot l'equivalent de "commande --help". Le man est généralement bien plus complet que "commande --help".

  3. Rafaruto says:

    J'était tellement déséspéré de trouver cette commande pour windows que j'allai tout copier sur un serveur solaris et supprimer les balise à l'aide de la commande fourni sur le site de Korben.info... Heureusement que tu a posté le lien de ce tips vraiment utile dans les commantaires.

    Simple et efficace. Merci de partager tes connaissances !

    J'te dois une demi heure mon ami ! ;)

  4. pilou says:

    Merci beaucoup, très pratique en effet !

  5. Jean says:

    Cette petite ligne m’a aussi fait gagner pas mal de temps. Merci !

Réagissez sur cet article !