2016-06-22 8 views
1

私は自分の名前に特定のパターンにマッチするファイルを削除しますGradleのタスク持って削除します。私はより古いファイルを削除したいのGradle:一定時間よりも古いファイル

task deleteTempFiles(type: Delete) { 
    tasks['clean'].dependsOn(it) 
    delete fileTree(dir: '..', include: '**/tempfile*.tmp') 
} 

を、言うことができます、2時間以上24時間。それは2日かかることがあります。どのような方法をgraleで行うには簡単ですか?

私はあなたが(filetree.matching `のいくつかのバリエーションを使用することができるはず想像
+0

)'とは何8時間よりも古いファイルについて 'file.getlastmodified' – RaGe

答えて

1
task deleteTempFiles(type: Delete) { 

    def cutoff = new Date().minus(1); //24 hrs ago 

    delete fileTree (dir: '..') 
     .matching{ include '**/tempfile*.tmp' } 
     .findAll { 
      def filedate = new Date (it.lastModified()) 
      filedate.before(cutoff) 
     } 
} 
+0

を使用しています閉鎖? – user3111525

+1

@ user3111525、これはおそらく簡単ですね。 – Opal

+0

検索はあなたの友人です。 http://stackoverflow.com/questions/21166927/incrementing-date-object-by-hours-minutes-in-groovy http://stackoverflow.com/questions/25046910/how-do-i-subtract-minutes-from -current-time – RaGe

関連する問題