debug module does not escape double quotes

Hello guys,

I’ve got a problem with ansible playbook. In fact, I use debug module to display a file content.

the content of myfile is :

my playbook.yml is as follow:

  • name: Display file content
    shell: cat myfile
    register: file

  • debug:
    msg: “{{file.stdout_lines}}”

playbook.yml output :

TASK [debug] ***************************************************************************************************************************
ok: [serveur] => {
“msg”: [
" <network ip=**"1.2.3.[0-255]**" />"
]
}

I don’t want ansible to add anti-slashes before double quotes. I just want it to display the file content as it is.

I’ll appreciate any help to fix this.

Thanks in advance.

Rasha

You may be able to do it with a different callback plugin but by default the output is displayed in JSON. JSON uses double quotes to quote keys and values so if the value has double quotes in them they need to be escaped with a backslash, e.g. the value of ‘abc “123”’ would become "‘abc "123"’ in JSON

Thanks

Jordan

You are printing out stdout_lines which is a list, you need to use {{ file.stdout }} instead.