我已经尝试过了,但没有工作。
find . -mtime +10 -print| grep -H -r "test" | cut -d: -f1
您可以利用xargs和处理找到的文件find,但find单独可以:
find . -mtime +10 -exec grep -l "test" {} \+
find ... -exec XXX {} \;(或者\+,感谢凯文)对找到的文件执行 XXX 命令find。grep -l只显示文件的名称,因为我认为您正在尝试使用cut -d: -f1.您可能还需要添加-type f以仅查找文件,而不是目录。
您必须使用 xargs 执行,例如:
find . -mtime +10 -print0 | xargs -0 grep -H -r "test" | cut -d: -f1
编辑
我插入了选项,这样您就不会遇到文件名中的空格问题。