因此,我尝试获取所有超过 40 天的文件。(因此使用 -mtime -40),但找不到,因为某些文件有无效谓词。(需要查找所有文件,无论是当前文件还是后代文件。
$ find . -name * -mtime -40 > FILE_LIST
find: invalid predicate `-file-name.xls'
进而...
$ find ./* -name * -mtime -40 > FILE_LIST
find: invalid predicate `-file-name.xls'
但这些似乎都不起作用。
答案1
我认为问题在于shell*
将你文件中的-name *
展开为文件列表,然后将其传递给 find 命令。 find 命令随后解析命令行并查找 ,并-file-name.xls
尝试将其解释为命令行参数。
尝试
find . -mtime -40 > FILE_LIST
它应该可以做你想做的事。
答案2
啊……如果你读过手册页,-mtime -40 会给你少于 40 天的文件。你想做的难道不是这样的吗:
find . -mtime +40 >FILE_LIST
如果您想查找/列出超过 40 天的文件。