You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何创建Make规则批量将所有*.md文件编译为PDF

批量生成Markdown对应的PDF的Makefile配置

直接在现有Makefile中新增一个pdf目标即可实现需求,修改后的完整Makefile如下:

pdf: $(patsubst %.md, %.pdf, $(wildcard *.md))

%.pdf: %.md
    pandoc $< -o $@

核心逻辑说明

  • $(wildcard *.md):自动获取当前目录下所有后缀为.md的文件,新增或删除.md文件时无需修改Makefile
  • $(patsubst %.md, %.pdf, ...):把每个.md文件名转换为对应的.pdf文件名,作为pdf目标的依赖项
  • 执行make pdf时,Make会自动对比每个.md和对应的.pdf的修改时间,只生成或更新需要的PDF文件,不用手动指定单个目标

额外提示

如果需要处理子目录中的Markdown文件,可将wildcard部分改为$(wildcard **/*.md)(此特性需要GNU Make支持)。

内容的提问来源于stack exchange,提问作者Thrastylon

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.20 18:59:52