我巨大的上载文件夹,并尝试删除旧文件,例如。超过3年的文件或在特定日期之前添加的文件,但是由于某种原因最终会删除新文件和旧文件。
这是我到目前为止尝试过的命令
命令1
find /home/user/uploads -maxdepth 1 -type f ! -newermt "2018-10-14 00:00:00" -exec rm -v {} \;
此命令删除所有忽略with的内容! -newermt或只是-newermt
命令2
find /home/user/uploads -maxdepth 1 -mtime +1095 -type f -print -exec rm -i {} \;
没有返回结果
命令3
find /home/user/uploads -type f ! -newermt "2018-10-14 00:00:00" | xargs rm
这将返回错误“ xargs:默认情况下,不匹配的单引号对xargs而言是特殊的,除非您使用-o选项”
我无法弄清楚命令到底出了什么问题。我正在CentOS系统上运行。
答案 0 :(得分:0)
因此,在使用命令一段时间后,这才是有效的命令。
find . -maxdepth 1 -type f ! -newermt "2018-10-16" -exec rm -v {} \;
这些标志还有助于防止遇到这种情况。
-maxdepth 1
仅表示该文件夹中的文件
-newermt
用于该日期或之后修改的文件。
! -newermt
用于在上述日期之前删除文件。
我还添加了-v标志,因此我将看到文件的输出已删除。
感谢所有帮助,这节省了我很多时间。