嗨,我有一个问题,是在进行curl解析并注册回ansible后,要从json输出中提取变量之一
剧本:
- name: debug stdout
debug:
msg: "{{ result.stdout | from_json }}"
register: dataresult
- name: debug fact
debug:
msg: "{{ dataresult.data.start_time_string }}"
输出:
TASK [backup_api : debug stdout]
***********************************************
task path: /home/ansible/cm-dha/roles/backup_api/tasks/main.yml:36
ok: [127.0.0.1] => {
"msg": {
"data": [
{
"backup_id": 40362,
"certified": null,
"instance_id": 148,
"start_time": 1506985211,
"start_time_string": "10/03/2017 03:00:11 am"
}
],
"timestamp": 1507022232
}
}
错误:
致命的:[127.0.0.1]:失败!=> {“ failed”:true,“
msg”:“字段’args’的值无效,该值似乎包含未定义的变量。错误是:’dict object’没有属性’data’\ n \ n错误似乎出在“
/home/ansible/cm-
dha/roles/backup_api/tasks/main.yml”中:第48行第5列,但具体位置可能取决于文件中的语法问题。 \ n \
n出现问题的行似乎是:\ n \ n \ n-名称:调试事实\ n ^这里\ n“
尝试提取值start_time_string时发生错误
所以如何做可能是因为我尝试了很多事情,例如使用with_items,with_dict,模拟data []输出进行调试,甚至进行json查询,但都没有成功
所以这里有什么帮助吗?
不要使用debug
分配事实,set_fact
而是使用:
- name: debug stdout
set_fact:
dataresult: "{{ result.stdout | from_json }}"
- name: debug fact
debug:
msg: "{{ dataresult.data[0].start_time_string }}"
问题内容: 我有以下两项艰巨的任务 用于获取计算机(Linux)中的接口列表并获取每个接口的总线地址。我在同一本剧本中还有另外一项任务,如下 我希望对var2的值进行迭代,然后打印总线号。 var2.results如下 我的目标是获取上述每个项目中stdout的值,例如(“ stdout”:“ 09:00.0”)。我试图给像 但这不能正确提供标准输出中的总线值。当第二个变量是and indexed
我一直在挠头,不知道是否有人能给我一个指针。我将一些数据作为变量从JSON提取到PHP,当存在嵌套节点时,我可以做到这一点——如果节点是文本,而不是如果节点是数字。我使用的是json_decode,这与如何使用PHP从json中提取数据不同? 这是可以的 这不起作用 所以我的问题是,当节点是一个数字时,我如何瞄准它?谢啦
我正在使用一个运行Javascript在页面上打印文本的页面源代码。这里是我所说的源代码的一个片段: 有什么建议吗?
问题内容: 是否有可能使用php cli从用户那里获取输入,然后将输入转储到变量中,然后脚本继续进行。 就像c ++ 函数一样? 如果可以,那有可能吗?也许不仅是php,而且还有一些linux命令? 问题答案: 看看这个PHP手册页 http://php.net/manual/en/features.commandline.php 特别是
问题内容: 我有一个合并语句,该语句应始终更新或插入单个记录。我想记住该语句在变量中的ID。看起来像这样: 现在这不起作用,因为您不能以这种方式在输出子句中设置@int。我知道我可以创建一个模板并在输出中使用 INTO @temptable 。但是由于我 知道 它始终是一条记录,因此我希望将ID包含在INT变量中。这有可能吗?还是我被迫使用表变量。我希望我只是缺少一些语法。 问题答案: 不,您必须
我有这个api 这是存储在注册表中的json,媒体类型为application/json: 我想在调用api时读取json并输出它,但响应是: 原始内容是:“HTTP/1.1 200 OK主机:192.168.0.191:8280接受编码: gzip,收缩内容类型:应用程序/json;charset=UTF-8日期:周三,4月8日2020 12:00:19格林尼治标准时间传输编码:组块连接:保持A