是否可以在Makefile中使用匿名fifo?
我通过以下方式尝试了:
%.html: %.txt
pandoc -o $@ <(sed 's%•%*%' $<)
但我从/bin/sh
那里得到一个语法错误.
- 如何在生成文件中使用匿名 fifo?
- 有没有更好的解决方案来为 pandoc 使用简单的正则表达式(甚至是简单的查找和替换(过滤器?
此make
使用/bin/sh
来执行命令,/bin/sh
不理解<(...)
进程替换语法。
幸运的是,pandoc
不需要在其命令行上使用文件名。如果未指定文件名,则pandoc
从其标准输入流中读取,因此您应该能够通过普通管道将sed
命令的输出提供给它,如下所示:
sed 's%•%*%' "$<" | pandoc -o "$@"