我正在写一个ant脚本来清理一个存档文件夹
以下是我需要清理的方法:我需要删除超过一定天数的文件夹,并且有超过3个文件。 所以例如,如果一个文件夹是300天,但只有3个文件,将不会被删除。
我知道我可以ssh进入档案, find -mtime +365 -exec rm -rf {} ;\
删除超过1年的文件,但我不知道如何解释最less的3个文件
我也知道find -type f | wc -l
find -type f | wc -l
会列出文件的数量,但是这对脚本没有太大的帮助
有任何想法吗?
ANT 选择器使您能够自定义要删除的文件集。
尝试以下操作:
<target name="purge"> <tstamp> <format property="touch.time" pattern="MM/dd/yyyy hh:mm aa" offset="-300" unit="day"/> </tstamp> <delete> <fileset dir="${src.dir}"> <date datetime="${touch.time}" when="before"/> <scriptselector language="javascript"><![CDATA[ if (file.getParentFile().list().length > 3) { self.setSelected(true); } else { self.setSelected(false); } ]]> </scriptselector> </fileset> </delete> </target>