You need to enable JavaScript to run this app. Ansible如何提取过期证书变量的cn字段写入分隔格式文件
优惠活动
大模型
产品
解决方案
定价
更多

Ansible如何提取过期证书变量的cn字段写入分隔格式文件

Ansible过期证书CN写入文件修正方案

错误原因

你原有写法中的json_query路径匹配错误:
expired_certs.results是数组结构,每个数组元素下才存储item对象,你写的item[*]是尝试匹配item字段下的数组,该路径不存在,因此返回空值。

修正后的任务写法

1. 逗号分隔格式

- name: Create file with expiring certs (comma separated)
  copy:
    dest: "./cert_expiring.txt"
    content: "{{ expired_certs.results | json_query('[].item.cn') | join(',') }}"

2. 换行分隔格式

- name: Create file with expiring certs (newline separated)
  copy:
    dest: "./cert_expiring.txt"
    content: "{{ expired_certs.results | json_query('[].item.cn') | join('\n') }}"

逻辑说明

  • json_query('[].item.cn'):遍历expired_certs.results数组的所有元素,提取每个元素下item字段的cn值,返回符合条件的CN列表
  • join()过滤器将列表按照指定分隔符拼接为字符串,可根据需求自定义分隔符

注意事项

请确保该copy任务的执行顺序在之前的证书判断任务之后,且两者属于同一个play,保证expired_certs变量可正常读取。如果无符合过期条件的证书,生成的文件内容为空属于正常逻辑。

内容的提问来源于stack exchange,提问作者stminion001

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.20 05:06:03