find是我们很常用的一个Linux命令,但是我们一般查找出来的并不仅仅是看看而已,还会有进一步的操作,这个时候exec的作用就显现出来了。
看例子:
find ./ -name "*.txt" -exec ls -l "{}" \;
查找当前目录的.txt文件并以列表形式列出来
find ./ -name "*.txt" -exec mv "{}" "{}d" \;
批量修改当前目录下.txt文件的后缀名改为.txtd
解释:
-exec 参数后面跟的是command命令,它的终止是以;为结束标志的,所以这句命令后面的分号是不可缺少的,考虑到各个系统中分号会有不同的意义,所以前面加反斜杠。
{} 花括号代表前面find查找出来的文件名。
例子:
find ./ -name "*.tmp" -exec rm -rf "{}" \;
删除所有的临时文件
find ./ -name ".svn" -exec rm -rf {} \;
![](https://img2024.cnblogs.com/blog/35695/202408/35695-20240826070647288-243310440.jpg)