说真的,'='和'=>'之间有什么区别? 它们看起来和感觉都像变量绑定运算符。
另外,为什么每个声明后都需要逗号, 而另一个在找到逗号时会生成语法错误?
答案 0 :(得分:1)
=
用于assign a value to a variable,例如
$foo = 'bar'
在Puppet 4中有一些高级方法可以分配变量,但一般来说,只要它是表达式左侧的$变量,就不要添加逗号并始终使用=
。进一步的变量赋值只是用新的行分隔。
=>
是键值分隔符in hashes或资源中的属性列表:
{
'foo' => 'bar',
'bar' => 'baz',
}
或
file { '/etc/foo.conf':
ensure => present,
content => 'bar',
}
请注意,foo,bar,ensure和content本身不是变量 - 它们是散列或属性中的键。
您会发现许多语言的类似设计,例如:的Perl。