如果 1 天没有修改,则删除特定文件

如果 1 天没有修改,则删除特定文件

如果一天(或 1440 分钟)内没有修改,我想删除std_info下的特定文件。/tmp

目前,我创建了以下语法,仅打印一天内修改的文件:

 find /tmp -mmin -1440 -type f -exec ls -l {} +

但相反怎么做呢?

为了删除该std_info文件下的文件/tmp没有被修改1天内?

答案1

find /tmp/std_info -mmin +1440 -delete

假设这/tmp/std_info是一个文件,这将检查该文件,如果它在超过 1440 分钟前被修改,它将被删除。如果您没有,请使用-exec rm {} \;代替。-deletefind-delete

如果该文件可能不存在,请使用

[ -e /tmp/std_info ] && find /tmp/std_info -mmin +1440 -delete

删除任何std_info其下命名的文件/tmp已在 1440 分钟前修改,请使用

find /tmp ! -type d -name std_info -mmin +1440 -delete

! -type d还用来包含符号链接和目录以外的其他类型的文件。

相关内容