2011-10-08 12 views
7

Supongamos que tengo¿Cómo borrar toda la subcarpeta debajo de alguna carpeta en Ant?

/Root 
    /A 
     /to_delete 
     /not_to_delete 
    /B 
     /to_delete 
     /not_to_delete 
    /C 
     /to_delete 
     /not_to_delete 

¿Cómo suprimir esas carpetas llamadas "to_delete" en la hormiga?

+0

duplicado posible de [Eliminar carpetas excepto uno] (https://stackoverflow.com/questions/15619692/delete-folders-except-one) – peterh

+0

I fighted mucho con él en el momento, creo que [ esto] (https://stackoverflow.com/a/25668084/1783163) es lo que realmente quería. – peterh

Respuesta

10

Por favor, compruebe lo siguiente:

http://ant.apache.org/manual/Tasks/delete.html

Si no desea especificar A, B, C, tendrá que hacer algunas trito desagradable para searcing recursivamente todos los subdirectorios. He hecho esto con un script java personalizado.

Si puede especificar A, B, C, aunque sólo tiene algo:

<delete includeEmptyDirs="true"> 
    <fileset dir="root" includes="**/to_delete/"/> 
</delete> 
+0

No. No quiero especificar A, B, C No sé el nombre cuando lo elimino, pero sé que debajo de esa carpeta hay una carpeta llamada "to_delete". No es posible usar Ant solamente? – performanceuser

+0

Bueno, eso depende de lo que quieras decir con Ant :). No creo que haya una tarea de búsqueda/eliminación recursiva. Puede escribir el suyo en uno de los idiomas BSF admitidos. – FailedDev

+0

yo estaba tratando de utilizar: \t \t \t \t \t \t \t \t \t \t \t \t parecer doesn' t trabajo – performanceuser

0

Por favor, intente el código abajo y funciona para eliminar el directorio y sub directorios también.

<delete includeEmptyDirs="true"> 
    <fileset dir="${dir.to.delete}"> 
    <include name = "**" /> 
    <exclude name = "**/.svn" /> <!-- in case you want to skip .svn folders to avoid SVN conflicts --> 
    </fileset> 
</delete> 
Cuestiones relacionadas