首页 > 解决方案 > GNU find -exec 命令 {} ; vs -exec 命令 {} +

问题描述

谁能解释一下-exec参数的以下两个 GNU find选项之间的区别:

  1. 查找 -exec命令{} ;
  2. 查找 -exec命令{} +

手册页做了一个很好的例子来解释“出于性能和安全原因,人们可能更喜欢-exec ... +或更好的-execdir ... +语法”,但我似乎无法理解基本的的前提+

欢迎和赞赏任何帮助!

标签: linuxsyntaxgnu

解决方案


;语法为每个匹配项执行命令。该+命令使用一长串匹配项作为该命令的参数运行该命令。

例如:

$ find
.
./a.txt
./b.png

$ find . -exec echo {} \;
.
./a.txt
./b.png

$ find . -exec echo {} +
. ./a.txt ./b.png

推荐阅读