Find

用 查找命令;+ 和 +

  • October 24, 2021

我看過 find 命令如下,想知道它們之間的區別。

find . -exec COMMAND {} \;
find . -exec COMMAND {} \+
find . -exec COMMAND {} +

find exec 有兩種語法。

find . -exec [cmd] {} \;

{} 是 find 找到的結果的佔位符

; 表示對於每個找到的結果,命令 cmd 將與找到的結果一起執行一次。

執行如下: cmd result1; cmd結果2;…; cmd 結果 N

find . -exec [cmd] {} \+

{} 是 find 找到的結果的佔位符

  • 表示對於所有找到的結果,使用所有找到的結果執行命令 cmd。

執行如下: cmd result1 result2 … result N

我們什麼時候應該使用 find exec ;除了 +

-exec 執行的工具不接受多個文件作為參數

一次在這麼多文件上執行該工具可能會佔用太多記憶體

我們希望盡快開始獲得一些結果,即使獲得所有結果需要更多時間

引用自:https://unix.stackexchange.com/questions/674550