查找问题:无效谓词“-delete”

查找问题:无效谓词“-delete”

我尝试运行(unix-shell,win7):

find . -maxdepth 1 -name "*.jpg" -size -50k -delete

并得到错误:

find: invalid predicate '-delete'

有什么提示吗?

答案1

您还可以找到参数不仅在查找和删除操作中很有用,在运行命令后可能需要处理文本的其他操作中也很有用。在这种情况下,

find . -maxdepth 1 -name "*.jpg" -size -50k | xargs rm -f

请务必先使用 xargs 之前的“echo”检查您的工作(这样您可以在运行之前看到命令的样子)。它看起来像:

find . -maxdepth 1 -name "*.jpg" -size -50k | xargs echo rm -f

答案2

find从您正在运行的 unix shell(从 Windows)中发现 的版本缺少-delete谓词。

一个可能的替代方案是:

find . -maxdepth 1 -name "*.jpg" -size -50k -exec rm {} \;

相关内容