如何在生成文件中使用匿名 fifo



是否可以在Makefile中使用匿名fifo?

我通过以下方式尝试了:

%.html: %.txt
        pandoc -o $@ <(sed 's%•%*%' $<)

但我从/bin/sh那里得到一个语法错误.

  1. 如何在生成文件中使用匿名 fifo?
  2. 有没有更好的解决方案来为 pandoc 使用简单的正则表达式(甚至是简单的查找和替换(过滤器?

make使用/bin/sh来执行命令,/bin/sh不理解<(...)进程替换语法。

幸运的是,pandoc不需要在其命令行上使用文件名。如果未指定文件名,则pandoc从其标准输入流中读取,因此您应该能够通过普通管道将sed命令的输出提供给它,如下所示:

sed 's%•%*%' "$<" | pandoc -o "$@"

最新更新