set_fact模块可以在tasks中定义变量
---
- hosts: test70
remote_user: root
vars:
testvar1: test1_string
tasks:
- shell: "echo test2_string"
register: shellreturn
- set_fact:
testsf1: "{{testvar1}}"
testsf2: "{{}}"
- debug:
msg: "{{testsf1}} {{testsf2}}"
在第一个hosts中testvar1正常输出,但是在第二个hosts中就不能输出testvar1了。
---
- hosts: test70
remote_user: root
vars:
testvar1: tv1
tasks:
- set_fact:
testvar2: tv2
- debug:
msg: "{{testvar1}} ----- {{testvar2}}"
- hosts: test70
remote_user: root
tasks:
- name: other play get testvar2
debug:
msg: "{{testvar2}}"
- name: other play get testvar1
debug:
msg: "{{testvar1}}"
注册的变量都可以正常输出
---
- hosts: test70
remote_user: root
vars:
testvar3: tv3
tasks:
- shell: "echo tv4"
register: testvar4
- debug:
msg: "{{testvar3}} -- {{}}"
- hosts: test70
remote_user: root
tasks:
- name: other play get testvar4
debug:
msg: "{{}}"
- name: other play get testvar3
debug:
msg: "{{testvar3}}"
————Blueicex 2020/03/26 19:12 blueice1980@