En travaillant avec Sikuli, je me suis retrouvé avec une boucle de récursion Calculator.sikuli dans le programme qui créait une quantité innombrable de répertoires "calculator.sikuli.calculator.sikuli". Je pouvais déplacer l'arbre, mais le nom du chemin était trop long pour être supprimé.
Après avoir essayé plusieurs solutions avec popd loop, Scandisk et avoir obtenu (de manière perceptible) nowhere.....
J'ai écrit ce script pour 'aller en profondeur' dans les répertoires récurrents (dans un répertoire appelé 'a'), les déplacer (vers un répertoire appelé 'b'), puis supprimer l'arbre tronqué, les déplacer à nouveau (vers 'a'), et répéter :
1)cd D:\a\calculator.sikuli\calculator.sikuli\calculator.sikuli\calculator.sikuli
.............go deeeeeep in dir *A*
2) move calculator.sikuli ---> D:\b
.............move the crazy tree to dir *B*
3) kill D:\a\calculator.sikuli <---KILL(rd)
.............wipe dir *A*'s tree
4) move D:\b\calculator.sikuli ---> D:\a\
.............move the crazy tree back to dir *A*
REPEAT
- REM Utilisé pour supprimer les sous-dossiers récurrents à l'infini.
- REM suggère d'arrêter d'abord le service Windows Search (services.msc).
Remdirs.bat
D:
cd D:\a\calculator.sikuli\calculator.sikuli\calculator.sikuli\calculator.sikuli
move /-Y calculator.sikuli D:\b
cd D:\b
rd /s/q D:\a\calculator.sikuli
move /-Y calculator.sikuli D:\a
call D:\remdirs2.bat
C'est juste un appel pour exécuter à nouveau le fichier batch.