2011-10-08 28 views
7

Nasıl Ant "to_delete" olarak adlandırılan bu klasörleri silmek için ben Ant'deki bir klasörün altındaki tüm alt klasör nasıl silinir?

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

varsayalım?

+0

Olası yinelenen (https://stackoverflow.com/questions/15619692/delete-folders-except-one) – peterh

+0

O zaman onunla çok savaştı, sanırım [ Bu] (https://stackoverflow.com/a/25668084/1783163) gerçekten istediğin şey. – peterh

cevap

10

bu kontrol edin: Bir belirtmek istemiyorsanız, B, C özyinelemeli tüm alt dizinleri searcing için bazı kötü trict yapmak zorunda kalacaktır

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

. Bunu özel bir java script ile yaptım.

sadece bir şey gerekiyor gerçi A, B, C belirtebilirsiniz ise:

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

Hayır. A, B, C'yi belirtmek istemiyorum. Silmediğimde adı bilmiyorum, ancak bu klasörün altında "to_delete" adında bir klasör olduğunu biliyorum. Sadece Ant kullanmak mümkün değil mi? – performanceuser

+0

Peki, sadece Ant karşıtı demek istediğine bağlıdır :). Yinelemeli bir arama/silme görevi olduğunu düşünmüyorum. Desteklenen BSF dillerinden birinde kendi yazabilirsiniz. \t \t \t \t \t \t \t \t \t \t \t \t Bu etmiyor görünüyor': – FailedDev

+0

kullandığım çalışıyordu t – performanceuser

0

aşağıdaki kodu deneyin ve de dir ve alt dizinleri kaldırmak için çalışır ediniz. [Biri hariç klasörleri silin] arasında

<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> 
İlgili konular