将shell脚本移植到ruby erb模板、建议和建议?
我正在使用Puppet跨主机自动化配置管理 它可以使用erb模板跨不同主机设置各种服务(如apache、postfix等)的配置文件 到目前为止,我们使用的是充满sed、awk、grep过滤器等的shell脚本,现在我需要将这些代码移植到rubyerb模板 让我们进入编码部分:将shell脚本移植到ruby erb模板、建议和建议?,ruby,templates,shell,erb,puppet,Ruby,Templates,Shell,Erb,Puppet,我正在使用Puppet跨主机自动化配置管理 它可以使用erb模板跨不同主机设置各种服务(如apache、postfix等)的配置文件 到目前为止,我们使用的是充满sed、awk、grep过滤器等的shell脚本,现在我需要将这些代码移植到rubyerb模板 让我们进入编码部分: <%# domain gets its value from Facter, lets assume it to be abc.def.com x,y,z=<%= domain.split(".").join
<%# domain gets its value from Facter, lets assume it to be abc.def.com
x,y,z=<%= domain.split(".").join(",")%>
<%# x,y and z get the values abc,def,com respectively, right ?
请记住,上面的答案似乎太复杂了,我只需在erb模板中这样做:
dc=<%= domain.split('.').join(',dc=') %>
dc=
谢谢丹尼尔,我会记住这一点。就irb而言,我对保持erb代码与ruby代码的分离感到困惑,正如您提到的,“充满sed、awk、grep过滤器等的shell脚本”在这里非常流行。因此,如果你想继续这条路线,任何一个好问题都会在第一分钟内得到大约5个人的回答。就我个人而言,我喜欢Ruby,我觉得木偶看起来很棒。啊,谢谢我们。将记住这一点,以备将来使用
<%# I need something like this (yup, guessed it right, I am trying to generate slapd.conf
dc=abc,dc=def,dc=com
"a.b.c".split('.').collect {|thing| "dc=#{thing}" }.join(',')
dc=<%= domain.split('.').join(',dc=') %>