ansible中的filter:   map  ,其实是jinja2中的filter

python中 map(func, iter) 返回func与每个元素计算后的迭代器,iter是个可迭代对象

ansible中的map和python中的基本上用法相似。

1、value | map('func') :  没有仔细看代码,func可能是只能用jinja2的filter。举例来说,

---
- hosts: localhost
vars:
t1: ['abc','cde']
tasks:
- name: upper
debug: var=t1|map('upper')|list
###########################
ok: [localhost] => {
"t1|map('upper')|list": [
"ABC",
"CDE"
]
}

2、如果func需要多个参数,如替换 map('regex_replace','[0-9]+','foo') | list

---
- hosts: localhost
vars:
mylist:
- group_1
- group_2 tasks:
- debug:
msg: "{{ mylist | map('regex_replace', '([0-9]+)', 'foo') | list }}"
############################################
PLAY [localhost] *************************************************************** TASK [debug] *******************************************************************
ok: [localhost] => {} MSG: [u'group_foo', u'group_foo'] PLAY RECAP *********************************************************************
localhost : ok=1 changed=0 unreachable=0 failed=0

3、还有一种常用的方法,就是attribute=key的用法

---
- hosts: controller
tasks:
- name: get ifconfig
shell: ifconfig {{ item }} | awk '/inet/{print $2}'
register: ifout
with_items:
- 'br-ex'
- 'br-mgmt'
- debug: var=ifout.results|map(attribute='stdout')|list
#######################################
TASK [debug] *******************************************************************
ok: [192.168.10.3] => {
"ifout.results|map(attribute='stdout')|list": [
"172.16.20.3",
"192.168.10.3"
]
}
ok: [192.168.10.4] => {
"ifout.results|map(attribute='stdout')|list": [
"172.16.20.4",
"192.168.10.4"
]
}

ansible中的map的更多相关文章

  1. 【转】hive优化之--控制hive任务中的map数和reduce数

    一.    控制hive任务中的map数:  1.    通常情况下,作业会通过input的目录产生一个或者多个map任务. 主要的决定因素有: input的文件总个数,input的文件大小,集群设置 ...

  2. Map java中的map 如何修改Map中的对应元素

    Map java中的map 如何修改Map中的对应元素 Map以按键/数值对的形式存储数据,和数组非常相似,在数组中存在的索引,它们本身也是对象.         Map的接口         Map ...

  3. Java中Set Map List 的区别

    java中set map list的区别: 都是集合接口 简要说明 set --其中的值不允许重复,无序的数据结构 list   --其中的值允许重复,因为其为有序的数据结构 map--成对的数据结构 ...

  4. Java中遍历Map集合的四种方法

    在Java中如何遍历Map对象 How to Iterate Over a Map in Java 在java中遍历Map有不少的方法.我们看一下最常用的方法及其优缺点. 既然java中的所有map都 ...

  5. java8中的map和reduce

    java8中的map和reduce 标签: java8函数式mapreduce 2014-06-19 19:14 10330人阅读 评论(4) 收藏 举报  分类: java(47)  FP(2)  ...

  6. zk框架中利用map类型传值来创建window,并且传值

    @Command @NotifyChange("accList") public void clear(@BindingParam("id") String a ...

  7. python 中的map 详解

    python中的map函数应用于每一个可迭代的项,返回的是一个结果list.如果有其他的可迭代参数传进来,map函数则会把每一个参数都以相应的处理函数进行迭代处理.map()函数接收两个参数,一个是函 ...

  8. 由实现JavaScript中的Map想到的

    项目中要用到JavaScript中的Map数据类型,它不像JDK那样有自带的,怎么办?搜了找到一个不错的(http://darkmasky.iteye.com/blog/454749).用这个可以满足 ...

  9. perl编程中的map函数示例

    转自:http://www.jbxue.com/article/14854.html 发布:脚本学堂/Perl  编辑:JB01   2013-12-20 10:20:01  [大 中 小] 本文介绍 ...

随机推荐

  1. python学习日记(包——package)

    简述——包 包是一种通过使用‘.模块名’来组织python模块名称空间的方式. 注意: 1. 无论是import形式还是from...import形式,凡是在导入语句中(而不是在使用时)遇到带点的,都 ...

  2. 使用ubuntu做为dotnet core开发环境

    一.安装google浏览器 1.下载安装包(传送门:http://www.google.cn/intl/zh-CN/chrome/browser/desktop/index.html) 2.使用sud ...

  3. css:a:visited限制

    :active 对于:active伪类可以在div上生效.没有限制 :visited使用限制 :visited只适用于带href的a标签.如果给a标签绑定了click事件,那跳转的url必须跟href ...

  4. MFC:编辑区 Edit 的属性及使用

    Edit Control 编辑控件是 MFC 中使用较多的控件之一 1. Edit 的属性 Acccept Files -> True 控件接受拖放文件 Multiline -> True ...

  5. 第九周博客作业<西北师范大学|李晓婷>

    1.助教博客链接:https://home.cnblogs.com/u/lxt-/ 2.作业要求博客链接:https://www.cnblogs.com/nwnu-daizh/p/10726884.h ...

  6. CNN 激活函数

    CNN: 1\ Siamoid 2\ Relu + Softplus 图片来源: http://ufldl.stanford.edu/tutorial/supervised/MultiLayerNeu ...

  7. guns初级使用

    1.下载guns gitee地址:https://gitee.com/stylefeng/guns 这里使用的是Guns v5.1 2.配置环境 2.1 导入项目 解压从gitee上下载的guns源码 ...

  8. SSL证书安装(Tomcat)腾讯云服务器

    一.SSL证书免费领取地址一年的 https://www.toolmao.com/get-free-ssl 什么你们公司买的?每次免费领取一年,能不能轮流领取没试过.商鸡,商鸡.... 二.下载SSL ...

  9. springMVC中数据流解析与装载

    最近在看springmvc原理时,看到一篇比较赞的博文,留存学习,如果侵权,请告知,立删. 地址: https://my.oschina.net/lichhao/blog/172562

  10. thinkphp5+vue+iview商城 公众号+小程序更新版本

    thinkphp5+vue+iview商城加分销 源码下载地址:http://github.crmeb.net/u/crmeb 演示站后台:http://demo25.crmeb.net 账号:dem ...