makefile:递归查找并删除辅助文件

时间:2016-05-26 14:11:04

标签: makefile find

假设我有一个已知的文件列表:

EXT=*ext1 *ext2 *ext3

我想在我的makefile中使用类似

的东西
clean:$(EXT)
    find . -name @< -delete

但是我无法使它工作,因为我需要为每个扩展使用find命令,不仅是第一个或同时所有的EXT ......

显然,目标是能够从列表中快速添加和删除扩展程序。

2 个答案:

答案 0 :(得分:2)

使用for循环:

clean:
    for i in $(EXT); do find . -name "$$i" -delete; done

答案 1 :(得分:2)

我将如何做到这一点:

# Makefile
.PHONY: clean
clean: CRUFT=$(shell find . -name '*.ext[123]')
clean: ; rm -f $(CRUFT)

参考文献: