我想循环显示三个列表,并将每个值推送到文件中。
我尝试使用此块来打印输出并查看结果:
Execute SQL Task
我尝试这样做,以打印到文件中
- debug:
msg: "{{item.0}};{{item.1}};{{item.2}}"
with_together:
- "{{organization_name}}"
- "{{logical_value}}"
- "{{physical_value}}"
内容:
py_; 0; 0
但是看起来像这样:
sa_; 15891519; 1951981 ox_; 6485; 651655 qs_; 54; 64 py_; 0; 0
但是我只有最后的结果。有人可以帮助我吗?
亲切的问候
答案 0 :(得分:0)
copy
任务将覆盖目标文件。与其将内容追加到目标文件中,不如将其替换为循环的每次迭代。
您可能想使用template
任务。如果我们使用这样的模板:
{% for item in organization_name|zip(logical_value, physical_value) %}
{{ ';'.join(item) }}
{% endfor %}
还有这样的剧本:
---
- hosts: localhost
gather_facts: false
vars:
organization_name:
- org1
- org2
- org3
logical_value:
- l1
- l2
- l3
physical_value:
- p1
- p2
- p3
tasks:
- template:
src: ./data.in
dest: ./data.out
我们得到的输出如下:
org1;l1;p1
org2;l2;p2
org3;l3;p3