首页   注册   登录
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  程序员

有没有用 shell scripts 实现的模板引擎?

  •  
  •   xinhangliu · 2018-10-08 09:27:20 +08:00 · 1811 次点击
    这是一个创建于 403 天前的主题,其中的信息可能已经有所发展或是发生改变。
    13 回复  |  直到 2018-10-08 14:26:09 +08:00
        1
    azh7138m   2018-10-08 09:33:09 +08:00 via Android
    https://github.com/dontsueme/shtpl

    类似这种东西吗?
        2
    xinhangliu   2018-10-08 09:37:51 +08:00
    @azh7138m 对,但这个并不是纯 shell scripts 实现的。
        3
    wizardoz   2018-10-08 09:37:56 +08:00
    为啥要用 shell 来实现这玩意我好奇怪?把现有的模板引擎支持标准输入输出调用,它就可以在 shell 中使用了啊。
        4
    xinhangliu   2018-10-08 09:40:54 +08:00
    @wizardoz 想用来配置配置文件,所以最好能不引入依赖。
        5
    azh7138m   2018-10-08 09:48:06 +08:00 via Android
    @xinhangliu 是 shell 实现的啊,我看没有依赖
        6
    congeec   2018-10-08 10:10:06 +08:00
    shell 现有的特性足够当模板引擎了
        7
    geelaw   2018-10-08 10:15:00 +08:00
    我的 blog 就是 PowerShell,不过也有外部命令。
        8
    Firxiao   2018-10-08 10:21:29 +08:00
    shell 的话用 awk 实现过一个配置调用. 不过顶多算可用 不够优雅, 感觉还是 Python 好用些.
        9
    dudesun   2018-10-08 12:00:57 +08:00   ♥ 1
    Mo - Mustache Templates in Bash

    https://github.com/tests-always-included/mo
        10
    yanaraika   2018-10-08 12:05:36 +08:00
    #!/usr/bin/env bash

    eval "echo \"$(cat $1)\""

    用法:
    temp.tmpl
    Hello ${MY_USERNAME}

    MY_USERNAME="foobar" ./render.sh temp.tmpl

    输出
    Hello foobar
        11
    yanaraika   2018-10-08 12:06:33 +08:00
    @yanaraika 注意已经有的环境变量以及安全问题
        12
    kkeybbs   2018-10-08 12:28:06 +08:00 via iPhone
    配置文件不会太复杂,目前装了 gettext 用 envsubst
        13
    agagega   2018-10-08 14:26:09 +08:00 via iPhone
    我想知道有没有用 Python Ruby 这类正经脚本语言做的 Shell
    关于   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   3892 人在线   最高记录 5043   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.3 · 33ms · UTC 03:51 · PVG 11:51 · LAX 19:51 · JFK 22:51
    ♥ Do have faith in what you're doing.