il burattino inserisce due righe come uno in un file di configuration

Ho creato il prossimo file manifesto Puppet:

node 'puppetmaster' { package { "screen": ensure => "installed"} $enhancers = [ "pixman","pixman-devel","libXfont","tigervnc-server" ] package { $enhancers: ensure => "installed" } file { '/etc/skel/.vimrc': content => ":set nu\n :set incsearch\n :set ignorecase\n :set smartcase\n:set ts=2",} file { '/root/.vimrc': content => ":set nu\nset incsearch\n:set ignorecase\n:set smartcase\n:set ts=2",} file { '/etc/sysconfig/vncserver': content => 'VNCSERVERS="6:root"\nVNCSERVERARGS[6]="-geometry 1152x864"',} } 

Dopo aver applicato il manifesto, controllavo /etc/sysconfig/vncserver e mi sembra:

 VNCSERVERS=6:root\nVNCSERVERARGS[6]="-geometry 1152x864" 

Invece di essere separati da due righe come questa:

 VNCSERVERS=6:root VNCSERVERARGS[6]="-geometry 1152x864" 

Ho usato lo stesso formato quando ho impostato il file /etc/skel/.vimrc e ho funzionato come un fascino quindi non capisco perché non funziona mentre cercavo di impostare /etc/sysconfig/vncserver , credo che abbia qualcosa a che fare con le doppie virgolette "" . Qualsiasi aiuto sarebbe apprezzato!

One Solution collect form web for “il burattino inserisce due righe come uno in un file di configuration”

Devi utilizzare le virgolette doppie ( " ") invece delle singole virgolette ( ' ). Molto simile alla shell, al perl e ad altre lingue, le virgolette singole in Puppet indicano una string letterale e inibiscono l'interpolazione variabile e l'interpretazione dei backslash-escapes.

 file { '/etc/sysconfig/vncserver': content => "VNCSERVERS=\"6:root\"\nVNCSERVERARGS[6]=\"-geometry 1152x864\"",} 

Notate che ho dovuto sfuggire alle citazioni doppie all'interno della string.

Suggerimenti per Linux e Windows Server, quali Ubuntu, Centos, Apache, Nginx, Debian e argomenti di rete.