Linux删除大于1年的文件夹和超过3个文件

我正在写一个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>