Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/apache-spark/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
用于打印输出的Ansible Jinja2产生重复结果_Ansible_Jinja2_Ansible Template - Fatal编程技术网

用于打印输出的Ansible Jinja2产生重复结果

用于打印输出的Ansible Jinja2产生重复结果,ansible,jinja2,ansible-template,Ansible,Jinja2,Ansible Template,Ansible 2.2版,Mac OS X El Capitan 我正在尝试生成端口映射列表 当我运行这样的代码时 --- - hosts: [localhost] sudo: True pre_tasks: - debug: var: "{% for id in range(100,102) %} '{{ id }}' {% endfor %}" 我希望得到这样的结果: “‘100’‘101’”

Ansible 2.2版,Mac OS X El Capitan

我正在尝试生成端口映射列表

当我运行这样的代码时

---
- hosts: [localhost]
  sudo: True 
  pre_tasks:
    - debug: 
        var: "{% for id in range(100,102) %}  
                '{{ id }}'
            {% endfor %}"
我希望得到这样的结果:

“‘100’‘101’”

但我得到的结果是:

“100”“101”“100101”


我为什么会得到这样的结果还不太清楚。它看起来像是从结果中创建了某种映射,但我不明白为什么。

您得到了预期的结果,您只是看到了不一致的输出,因为您在
调试
模块中使用了
var
参数而不是
msg

尝试:


在更复杂的情况下,可以通过将内容保存到文件并检查内容来考虑更可靠的调试方式。这将消除显示Ansible日志的回调插件的影响

- hosts: localhost
  tasks:
    - copy: 
        dest: ./result.txt
        content: "{% for id in range(100,102) %}  
                    '{{ id }}'
                  {% endfor %}"
然后:

cat ./result.txt
cat ./result.txt