Estou tentando usar echo
dentro de uma regra Puppet para adicionar uma linha a .bashrc
, mas não consigo acertar a citação.
'/usr/bin/echo -E PS1=\"[\t--------------------------------------------------------\n-\u@\h:\W]\$\" >> /home/unu/.bashrc'
Essa coisa me dá o seguinte resultado:
PS1="[t--------------------------------------------------------n-u@h:W]$"
Outra tentativa:
'/usr/bin/echo -E PS1="[\t--------------------------------------------------------\n-\u@\h:\W]\$" >> /home/unu/.bashrc'
Essa coisa me dá o seguinte:
PS1=[\t--------------------------------------------------------\n-\u@\h:\W]$
Outro:
'/usr/bin/echo -e PS1="[\\t--------------------------------------------------------\\n-\\u@\\h:\\W]\\$" >> /home/unu/.bashrc'
Este está me dando isso:
PS1=[ --------------------------------------------------------
-\u@\h:\W]$
Não consigo encontrar uma maneira de fazer isso sem ter \
ou "
interpretado de alguma forma. Como devo fazer isso?
Pensei em usar mais aspas, mas isso causa um erro de sintaxe do Puppet:
"/usr/bin/echo -e 'PS1="[\\t--------------------------------------------------------\\n-\\u@\\h:\\W]\\$"' >> /home/unu/.bashrc"
Obtém este resultado:
Error: Could not retrieve catalog from remote server: Error 500 on SERVER: Server Error: Syntax error at '' (file: /etc/puppetlabs/code/environments/production/modules/profile/manifests/ps1.pp, line: 3, column: 38) on node centoslave1
Este é o código inteiro:
class profile::ps1 {
exec { 'myps1':
command => "/usr/bin/echo -e 'PS1="[\\t--------------------------------------------------------\\n-\\u@\\h:\\W]\\$"' >> /home/unu/.bashrc"
}
}