查找删除显示“没有这样的文件或目录”

查找删除显示“没有这样的文件或目录”

我只是运行一个命令来“查找并删除文件夹上超过 100 天的文件和文件夹”,并得到以下结果:

$ find . * -mtime +100 -delete
find: May_01_2015: No such file or directory
find: May_02_2015: No such file or directory
find: May_03_2015: No such file or directory
find: May_04_2015: No such file or directory
find: May_05_2015: No such file or directory
find: May_06_2015: No such file or directory
find: May_07_2015: No such file or directory
find: May_08_2015: No such file or directory
find: May_09_2015: No such file or directory
find: May_10_2015: No such file or directory

文件夹名称是正确的(它们应该被删除),但为什么它抱怨找不到这些文件夹? (他们在那里)


另外,当我这样做时,这很有趣:

$ find "$(pwd)" * -mtime +200 -print

我有时会看到同一个文件列出两次。我想知道是否是这个原因。为什么它要两次浏览同一个文件?

答案1

您不需要.*with和find之间的空格通常是一个错误,因为会扩展到当前目录中的每个条目,并告诉将其用作搜索路径。这也是为什么您的其他有时会显示文件两次。如果实际匹配一个文件,它也会被 匹配。.**findfindj$(pwd)*

所以你删除一个可能会做得更好,因为:

find . -mtime +100 -delete

当然,您可能希望在-print删除它们之前确保获得所需的内容。

答案2

100 天 = 144,000 分钟 = 144000 分钟 - 日开始 从今天开始而不是从 24 小时前开始测量时间(对于 -amin、-atime、-cmin、-ctime、-mmin 和 -mtime)。该选项仅影响 稍后出现在命令行上的测试。 查找“$(pwd)”-daystart -amin +144000 -exec ls -ltrio {} +

相关内容