Linux

查找包含無效謂詞的文件

  • January 19, 2012

所以,我正在嘗試獲取所有超過 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'

這些似乎都沒有。

我認為問題在於*你的 in-name *被 shell 擴展為一個文件列表,然後傳遞給它的命令行上的 find 。find 命令然後解析命令行並找到-file-name.xls它試圖解釋為命令行參數的那個。

嘗試

find .  -mtime -40 > FILE_LIST

這應該做你想做的事。

AHHHH….如果您閱讀手冊頁 -mtime -40 將為您提供少於 40 天的文件。你想做的不就是這樣嗎:

find . -mtime +40 >FILE_LIST

如果您想查找/列出超過 40 天的文件。

引用自:https://serverfault.com/questions/351626