Bash:查找并复制exec命令而不是递归

时间:2017-04-13 08:06:59

标签: bash recursion

我在整个项目中运行此命令到find all名为 deploy.php 的文件,并复制它们并将它们放在同一目录中找到了,名称为 deploy_bkp.php

find . -type f -name "deploy.php" -exec cp  {} deploy_bkp.php  \; 

但它没有递归地工作。它只适用于顶级目录中的文件。

任何人都可以帮助我。谢谢你

1 个答案:

答案 0 :(得分:1)

使用-execdir代替-exec。使用-exec时,当前目录不会针对每个文件进行更改,因此无论在何处找到deploy.php,都会在起始目录中创建备份文件。 -execdir预先告诉chdir到正确的目录,因此cp将按预期运行。