我们如何理解这个 find 命令?

我们如何理解这个 find 命令?
find /path/to/wordpress -type f -exec chmod 664 {} \; 

似乎它找到了类型为 file 的东西,然后 exec chmod

{}and\的用途是什么;

答案1

{}只是表示 所返回的文件find,而\;它是终止符。

请记住这\;意味着“执行命令对于每个find 返回的文件”。

在你的情况下

find /path/to/wordpress -type f -exec chmod 664 {} \; 

意思是“chmod 664/path/to/wordpress.

例如,如果您有

/path/to/wordpress/file1
/path/to/wordpress/file2
/path/to/wordpress/file3

结果相当于调用chmod三次:

chmod 664 /path/to/wordpress/file1
chmod 664 /path/to/wordpress/file2
chmod 664 /path/to/wordpress/file3

您还可以使用 终止命令\+,它会通过每一个找到作为命令参数的文件。

对于上面的例子,find /path/to/wordpress -type f -exec chmod 664 {} \+相当于单身的 chmod:

chmod 664 /path/to/wordpress/file1 /path/to/wordpress/file2 /path/to/wordpress/file3

相关内容