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

如何将字符串变量作为pandoc的--template选项值传入?

可行方法说明

pandoc的--template选项默认只接受文件路径或内置模板名称(比如html5),无法直接传入字符串变量作为模板内容——直接执行你写的命令会导致pandoc把变量里的HTML代码当作文件名去查找,进而报错。不过可以通过以下两种方式实现需求:

方法一:使用进程替换(适用于bash/zsh等支持的shell)

利用shell的进程替换特性,将变量内容通过临时文件描述符传递给pandoc:

pandoc input.md -s --template=<(echo "$my_custom_html5_template") -o output.htm

注意给变量加上双引号,避免空格、换行或特殊字符被shell错误解析。

方法二:创建临时文件(通用所有shell)

如果你的shell不支持进程替换,可先将变量内容写入临时文件,再用文件路径作为--template参数:

# 创建临时文件
temp_file=$(mktemp)
# 将模板内容写入临时文件
echo "$my_custom_html5_template" > "$temp_file"
# 执行pandoc转换
pandoc input.md -s --template="$temp_file" -o output.htm
# 清理临时文件
rm "$temp_file"

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.23 11:45:58