Ansible 模板化字符串时出现模板错误:意外的字符可解析

Ansible 模板化字符串时出现模板错误:意外的字符可解析,ansible,ansible-template,Ansible,Ansible Template,在远程主机中执行playbook以运行命令并使用shell传递输出时,出现以下错误 致命:[master1]:失败!=>{}MSG:模板生成时出现模板错误 字符串:4处出现意外字符u'a'。字符串: {54AA7FDA16833BFF8358B6BD157DF2D9CAA26B2} 下面是我的剧本内容 - name: 'Play1' hosts: master tasks: - name: 'Execute command' shell: ''sh gen

在远程主机中执行playbook以运行命令并使用shell传递输出时,出现以下错误

致命:[master1]:失败!=>{}MSG:模板生成时出现模板错误 字符串:4处出现意外字符u'a'。字符串: {54AA7FDA16833BFF8358B6BD157DF2D9CAA26B2}

下面是我的剧本内容

- name: 'Play1' 

  hosts: master 

  tasks: 

   - name: 'Execute command' 

     shell: ''sh generate_ticket.sh" #command to generate ticket 

     register: shell_output 

   - name: 'debug shell_output' 

     debug: 

      var="{{ shell_output.stdout | from_yaml }}"
当我尝试用msg进行同样的操作,并且不尝试过滤时,输出将被打印出来,没有任何错误。然而,我更喜欢使用var,因为它最适合我的进一步需求。如果票号是不同的字符串,我不会面临任何问题。请参阅下文:

输出:

ok: [master1] => {}


MSG:


54aa7fda16833bff8358b6bd1157df2d9caa26b2


Playbook :

- name: 'Play1' 

  hosts: master 

  tasks: 

   - name: 'Execute command' 

     shell: ''sh generate_ticket.sh" #command to generate ticket 

     register: shell_output 

   - name: 'debug shell_output' 

     debug: msg="{{ shell_output.stdout | from_yaml }}"

shell\u output.stdout

var=“{{'shell_output.stdout'| from_yaml}}”

如果有人有比这更好的办法,请告诉我