首页 新闻 会员 周边 捐助

register:result,这个result应该是个json把,这个值判断is failed is success对吗?

0
[已关闭问题] 关闭于 2025-07-15 14:43
  • shell: /usr/bin/foo
    register: result
    ignore_errors: True

  • debug:
    msg: "it failed"
    when: result is failed
    这个代码对吗,register:result,这个result应该是个json把,这个值判断is failed is success对吗?

_java_python的主页 _java_python | 小虾三级 | 园豆:1000
提问于:2025-07-11 17:25

register: result 的数据类型
result 变量是一个 Python 字典(类似 JSON 对象),包含以下关键字段:
python
{
"changed": true|false, # 任务是否改变了系统状态
"failed": true|false, # 任务是否失败(核心字段)
"rc": 0|1|2, # 命令的返回码(Return Code)
"stdout": "输出内容", # 命令的标准输出
"stderr": "错误内容", # 命令的错误输出
"msg": "描述信息" # 附加信息(某些模块特有)
}
2. 判断条件 when: result is failed 的正确性
✅ 完全正确!这是 Ansible 推荐的判断方式。原理: failed 是注册变量中的布尔字段 is failed 是 Ansible 的特殊测试函数(专用于检查任务状态)
changed 和 failed 是所有 Ansible 模块的公共返回值

_java_python 3个月前
< >
分享
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册