首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Ansible --如何使用深度嵌入的ansible_fact?

Ansible --如何使用深度嵌入的ansible_fact?
EN

Stack Overflow用户
提问于 2017-11-25 14:51:21
回答 1查看 142关注 0票数 0

我似乎无法使用以下字符串访问嵌入得很深的ansible_fact:

代码语言:javascript
复制
hostvars[inventory_hostname]['ansible_devices']['sda']['partitions']['sda2']['holders'] }}

这是我试图引用的事实树的一部分。

代码语言:javascript
复制
 "ansible_devices": {
            "sda": {
                "holders": [],
                "host": "RAID bus controller: LSI Logic / Symbios Logic MegaRAID                                                                                                                                                              SAS-3 3108 [Invader] (rev 02)",
                "partitions": {
                    "sda1": {
                        "holders": [],
                        "sectors": "614400",
                        "sectorsize": 512,
                        "size": "300.00 MB",
                        "start": "2048",
                    },
                    "sda2": {
                        "holders": [
                            "root-root",
                            "root-swap",
                            "root-home",
                            "root-opt",
                            "root-tmpl",
                            "root-usr",
                            "root-var"
                        ],

如何检查分区“根-home”?谢谢!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-11-26 20:58:55

这是一个列表,使用索引字段:

hostvars[inventory_hostname]['ansible_devices']['sda']['partitions']['sda2']['holders'][2]

hostvars.inventory_hostname.ansible_devices.sda.partitions.sda2.holders[2]

我建议尝试jq命令:

代码语言:javascript
复制
ansible -m setup -l your_hostgroup | sed '1c {' | jq '.|keyes'
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/47487254

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档