Groovy recipes for every day!
Today is the File Day !
List my imported packages
Today: I get a list of imported package into my old groovy scripts !
//Pattern for groovy script def p = ~/.*groovy/ new File( 'd:\\scripts' ).eachFileMatch(p) { f -> // imports list def imports = [] f.eachLine { // condition to detect an import instruction ln -> if ( ln =~ '^import .*' ) { imports << "${ln - 'import '}" } } // print thmen if ( ! imports.empty ) { println f imports.each{ println " $it" } } }
Output
D:\groovy getImports.groovy d:\scripts\testCom.groovy org.codehaus.groovy.scriptom.ActiveXProxy d:\scripts\testDurableSubscriber.groovy javax.jms.*; org.apache.activemq.ActiveMQConnectionFactory; org.apache.activemq.command.ActiveMQTopic; d:\scripts\testJmsBroker.groovy javax.jms.*; org.apache.activemq.ActiveMQConnectionFactory; org.apache.activemq.command.ActiveMQTopic;
Clean old files
today: Oh jeez! I get on my SysAdmin's nerves, file System /data is full! .. I have to clean all these useless daily reports !
def yesterday = ( new Date() ).time - 1000*60*60*24 def cleanThem = { prefix -> new File('/data/waporwaresystem/reports').eachFileMatch( ~".*${prefix}.*xml" ) { f -> if ( f.lastModified() <= yesterday ) { f.delete() } } } ['sales-carambar_', 'stock-scoubidou_', 'stock_freztagad_', 'coffee.vs.tea_stats_'].each( cleanThem )
Saved! My SysAdmin loves me, it's sure ![]()






