list - Ansible 将列表项连接到字符串中,包括引号

标签 list join ansible jinja2

这可能很容易,但我无法弄清楚

我有一个简单的列表,需要将其转换为字符串,但我需要最终字符串中的每个项目都包含引号

vars:
  servers:
    - ServerA
    - ServerB
    - ServerC

tasks:
  - name: Join into string
    debug:
      msg: "{{ servers | join(,) }}"

result looks like this
   "msg": "ServerA,ServerB,ServerC"

但我需要获取格式

msg: '"ServerA","ServerB","ServerC"'

最佳答案

加入项目

  result: >-
    "{{ servers|join('","') }}"

调试

    - debug:
        msg: "{{ result }}"

给出了预期的结果

 msg: '"ServerA","ServerB","ServerC"'

可以将其写入文件

  - copy:
      dest: /tmp/result.txt
      content: >
        "{{ servers|join('","') }}"

给出

shell> cat /tmp/result.txt 
"ServerA","ServerB","ServerC"

用于测试的完整剧本示例

- hosts: localhost

  vars:

    servers:
      - ServerA
      - ServerB
      - ServerC

    result: >-
      "{{ servers|join('","') }}"

  tasks:

    - debug:
        msg: "{{ result }}"
    - copy:
        dest: /tmp/result.txt
        content: >
          "{{ servers|join('","') }}"

关于list - Ansible 将列表项连接到字符串中,包括引号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/75975941/

相关文章:

mysql - 足球 SQL 查询 Home- 和 Roadteam 问题

java - 如何处理List<Tuple>

python - 根据索引和列合并/连接两个数据框

c# - 在数字列表中生成数字范围

MySQL连接到同一个表中的列

ansible - 创建系统接口(interface)名称列表及其 MAC 地址

ansible - 根据 ansible 中的条件将项目添加到列表中

python - 使用 Python 字典编写 Ansible playbook

list - Typed Racket 是否提供类型安全的 list-ref 函数?

python - 为什么这个求无序列表最小值和最大值的函数在某些情况下不起作用?