On 07/04/2016 11:17 AM, Věroslav Kaplan wrote:
> Ahoj vespolek,
>
> potřebuju z shellového skriptu generovat nějaké textové soubory podle
> šablon. Shell expansion je pro moje účely už moc slabé.
>
> V ideálním případě hledám něco, jako bylo dávno `cheetah fill` z
> CheetahTemplates.
> Cheetah od roku 2010 spí tvrdým spánkem a já bych radši použil něco
> aktuálního - asi Jinja.
>
> Existuje nějaké best-practse CLI řešení pro Jinja a CLI?
> Našel jsem
https://github.com/kolypto/j2cli a
>
https://github.com/mattrobenolt/jinja2-cli
>
> Používá někdo něco podobného?
Já tohle občas potřebuju, ale zatím vždycky znova vynalézám kolo. Přijde
jako schůdná cesta, vzhledem k tomu, že kolo má asi deset řádků, a že
většinou stejně chci vyčistit vstupní data nebo generovat víc souborů v
cyklu nebo něco jiného co se mi už dělá líp v Python u než v CLI/Bashi.
import json
import jinja2
with open("template.txt") as f:
template = jinja2.Template(f.read())
with open("data.json") as f:
data = json.load(f)
with open("result.txt", "w") as f:
f.write(template.render(**data))