【发布时间】:2019-12-05 11:28:58
【问题描述】:
我正在为一些用 Markdown 编写的个人文档编写一个 makefile,并希望在构建时将所有文件合并在一起,这样我就不必每次添加新文件时都编辑 Makefile。这是我的代码:
MERGE:
@printf "Merging all files into one...\n"
@cp .yaml tmp
@for file in *.md;\
do\
cat $$file;\
echo "";\
done > tmp
@mv tmp tmp.md
唉,每当我运行它时,make 都会返回并冻结:
Merging all files into one...
cat: 0: No such file or directory
我听说我可能将cat 称为文件?但我使用了正确的for 语法并将$ 转义为$$。
那我做错了什么?
【问题讨论】:
标签: shell for-loop makefile gnu-make cat