Ansible有条件的基于结果的stdout?

如何使用基于标准输出的when语句:result? 如果标准输出存在,​​我想要一些命令运行,如果没有标准输出存在,​​我想要一些命令来运行。

- hosts: myhosts tasks: - name: echo hello command: echo hello register: result - command: somecommand {{ result.stdout }} when: result|success - command: someothercommand when: result|failed 

Solutions Collecting From Web of "Ansible有条件的基于结果的stdout?"

尝试检查,看看它是否等于一个空白的字符串?

 - hosts: myhosts tasks: - name: echo hello command: echo hello register: result - command: somecommand {{ result.stdout }} when: result.stdout != "" - command: someothercommand when: result.stdout == ""