2011-11-14 55 views
3

我想使用shell脚本遍历当前目录下的所有目录。在每个子目录中,都有一个makefile,我想执行它。任何想法如何做?使用shell脚本遍历目录

回答

3

尝试用find

find -iname makefile -execdir make -f {} \; 

这会发现每个命名makefile文件(或Makefile文件,或任何不同情况下的makefile词,感谢thiton)(递归),然后启动使反对。

+3

稍微改进:“Makefile”也经常使用,所以“命名”可能更合适。 – thiton

+0

@thiton:对,我这样编辑我的答案 –

+0

嗯,我试过上面的方法,它没有工作。也许我应该提到makefile的目标本身就在子目录中。因此,我想我们需要手动遍历子目录以获得它(?)。 – uyetch