什么是正确的find -exec语法

Modified on: Sun, 21 Jul 2019 01:20:02 +0800

我想删除特定文件夹中大于2MB的文件。所以我跑了:

find . -size +2M

我得到了两个文件的列表

  

./ a / b / c / file1

  
  

./ A / F / G / file2的

然后我跑:

find . -size +2M -exec rm ;

我收到错误消息Find: missing argument to -exec

我检查手册页中的语法,然后显示-exec command ;

所以我试试

find . -size +2M -exec rm {} +

它有效。我知道{}使它执行命令,如rm file1 file2而不是rm file1; rm file2;

那么为什么第一个不起作用?

解答:强>

我想我只需要几次RTFM才能最终理解它的含义。尽管第一个示例没有显示{},但在所有情况下都需要括号。然后要么加\;或+取决于所需的方法。不要只阅读标题。阅读说明。得到它了。

作者:,Safado

最佳答案

您可以使用以下任何一种形式:

find . -size +2M -exec rm {} +

find . -size +2M -exec rm {} \;

分号应该被转义!

作者:Khaled

相关问答

添加新评论