我需要管理越来越多的相似但不同的 ASCII 文件。 (碰巧它们是 Apache VirtualHosts,但这并不是特别相关。)对于每个生产网站,开发人员可能出于各种原因需要多达四个变体配置。
您能推荐一下您最喜欢的模板系统吗?我知道其中一些,我想到的是 M4 和 Template::Toolkit。我最重要的特点不是强大,而是直观的操作和优雅的简洁。
答案1
我非常喜欢使用make
和m4
。我广泛使用make
和来设置 Nagios 配置文件m4
; Nagios 充满了重复的块,可以通过使用m4
.
make
和的好处m4
是它们通常是 Linux 和 UNIX 系统上基本安装的一部分,或者至少是基本软件包存储库的一部分;像Template::Toolkit
你必须安装它之类的东西。 Perl 也比m4
和更重make
。
m4
如果您愿意,您还可以通过将其放在文件顶部来设置半自动运行m4
(假设该文件是file.m4
例如):
#!/usr/bin/m4 > file.conf
如果您不想重写file.conf
,请从命令中删除重定向:
#!/usr/bin/m4
file.m4
然后你还必须使该文件可执行:
chmod +x file.m4
答案2
我会选择使用 Perl 编写的自定义解决方案,例如 Template::Toolkit。这样你就可以保持你的代码优雅和简单。