在Ansible中,可以使用Jinja2模板语言的过滤器来从字典中提取深度嵌套的数据。以下是一种方法:
my_dict
的字典,其中包含了深度嵌套的数据。你可以使用Jinja2的json_query
过滤器来提取数据。首先,你需要在Ansible的任务中使用set_fact
模块将字典传递给一个变量,如下所示:- name: Set fact with dictionary
set_fact:
my_dict:
key1:
key2:
key3: value
debug
模块来提取数据。你可以使用json_query
过滤器,并使用JMESPath查询语法来指定要提取的数据路径。例如,要提取my_dict
中key3
的值,可以使用以下任务:- name: Extract nested data from dictionary
debug:
msg: "{{ my_dict | json_query('key1.key2.key3') }}"
请注意,Ansible中的字典提取是基于JMESPath查询语法的。你可以在JMESPath官方文档中了解更多关于查询语法的信息。
推荐的腾讯云相关产品和产品介绍链接地址:
领取专属 10元无门槛券
手把手带您无忧上云