find -exec 命令后面的\;和+

一个-exec只能执行一个命令,而且必须在命令后面加上终结符,终结符有两个:“;”和“+”。
其中“;”会对每一个find到的文件去执行一次cmd命令。而”+“让find到的文件一次性执行完cmd命令。

为什么必须有终结符?
因为一个find后面可以有多个-exec cmd,所以必须要有终结符分割他们。如果不加,会包缺少参数。

[work@jkz ~]$ find . -maxdepth 1 -type f -name "*.log" -exec echo {} \; -exec echo {} +
./server02.log
./server03.log
./server00.log
./server01.log
./timing.log
./server.log
./server02.log ./server03.log ./server00.log ./server01.log ./timing.log ./server.log

为什么要加“\”?