首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

在Ansible中遍历两个列表

可以使用with_nestedwith_cartesian这两个循环控制结构。

  1. with_nested:用于遍历两个嵌套的列表,并逐个取出其中的元素进行操作。示例代码如下:
代码语言:txt
复制
- name: Example using with_nested
  debug:
    msg: "Outer item: {{ item.0 }}, Inner item: {{ item.1 }}"
  with_nested:
    - [1, 2, 3]
    - ['a', 'b', 'c']

上述代码会输出如下结果:

代码语言:txt
复制
TASK [Example using with_nested] *************************************************************************************
ok: [localhost] => (item=[1, 'a']) => {
    "msg": "Outer item: 1, Inner item: a"
}
ok: [localhost] => (item=[1, 'b']) => {
    "msg": "Outer item: 1, Inner item: b"
}
ok: [localhost] => (item=[1, 'c']) => {
    "msg": "Outer item: 1, Inner item: c"
}
ok: [localhost] => (item=[2, 'a']) => {
    "msg": "Outer item: 2, Inner item: a"
}
ok: [localhost] => (item=[2, 'b']) => {
    "msg": "Outer item: 2, Inner item: b"
}
ok: [localhost] => (item=[2, 'c']) => {
    "msg": "Outer item: 2, Inner item: c"
}
ok: [localhost] => (item=[3, 'a']) => {
    "msg": "Outer item: 3, Inner item: a"
}
ok: [localhost] => (item=[3, 'b']) => {
    "msg": "Outer item: 3, Inner item: b"
}
ok: [localhost] => (item=[3, 'c']) => {
    "msg": "Outer item: 3, Inner item: c"
}
  1. with_cartesian:用于对两个列表进行笛卡尔积操作,生成一个元素为元组的列表。示例代码如下:
代码语言:txt
复制
- name: Example using with_cartesian
  debug:
    msg: "Combination: {{ item }}"
  with_cartesian:
    - [1, 2, 3]
    - ['a', 'b', 'c']

上述代码会输出如下结果:

代码语言:txt
复制
TASK [Example using with_cartesian] **********************************************************************************
ok: [localhost] => (item=[1, 'a']) => {
    "msg": "Combination: [1, 'a']"
}
ok: [localhost] => (item=[1, 'b']) => {
    "msg": "Combination: [1, 'b']"
}
ok: [localhost] => (item=[1, 'c']) => {
    "msg": "Combination: [1, 'c']"
}
ok: [localhost] => (item=[2, 'a']) => {
    "msg": "Combination: [2, 'a']"
}
ok: [localhost] => (item=[2, 'b']) => {
    "msg": "Combination: [2, 'b']"
}
ok: [localhost] => (item=[2, 'c']) => {
    "msg": "Combination: [2, 'c']"
}
ok: [localhost] => (item=[3, 'a']) => {
    "msg": "Combination: [3, 'a']"
}
ok: [localhost] => (item=[3, 'b']) => {
    "msg": "Combination: [3, 'b']"
}
ok: [localhost] => (item=[3, 'c']) => {
    "msg": "Combination: [3, 'c']"
}

这些方法可以帮助我们在Ansible中同时遍历两个列表,并进行相关操作。对于更复杂的场景,Ansible还提供了其他循环控制结构和过滤器,可根据具体需求选择适合的方法。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

31分16秒

10.使用 Utils 在列表中请求图片.avi

5分24秒

一小时学会Redis系列教程-05-Redis 命令-在 Redis 中存储列表

1分0秒

一分钟让你快速了解FL Studio21中文版

34秒

PS使用教程:如何在Photoshop中合并可见图层?

6分33秒

088.sync.Map的比较相关方法

5分24秒

074.gods的列表和栈和队列

56秒

PS小白教程:如何在Photoshop中给灰色图片上色

-

如何看待当前AI技术在智能交通市场中的应用现状丨华为安平业务部

9分11秒

芯片设计流程科普

6.4K
1时5分

APP和小程序实战开发 | 基础开发和引擎模块特性

2分7秒

使用NineData管理和修改ClickHouse数据库

5分33秒

JSP 在线学习系统myeclipse开发mysql数据库web结构java编程

领券