“找到”中的“{}”是什么? -name“* .pyc”-exec rm -rf {} \;“是什么意思?

时间:2014-06-04 06:40:09

标签: bash shell

这可能是一个天真的问题,但我在网上搜索和stackoverflow后找不到答案。我不知道找到答案的正确关键字。提前谢谢你发出一个指针!

我的问题是' {}'在以下命令中:

find . -name "*.pyc" -exec rm -rf {} \;

为什么我们需要{}和\;这里?

4 个答案:

答案 0 :(得分:1)

{}表示通过find命令找到的文件或目录。当使用\;选项查找表示命令终止时,需要-exec

find . -name "*.pyc" -exec rm -rf {} \;

仅在当前目录中找到名称以.pyc结尾的文件或目录,并对找到的文件或目录执行删除操作。

答案 1 :(得分:1)

搜索man find谷歌时说: http://unixhelp.ed.ac.uk/CGI/man-cgi?find

如果您再次搜索{},则会看到解释。 您也可以在控制台中发出man find

答案 2 :(得分:1)

  

字符串' {}'由正在处理的当前文件名替换   它发生在命令的参数中,而不仅仅是在   单独存在的参数,如某些版本的find。

答案 3 :(得分:0)

表示找到的文件名。