我有一个带有时间戳的变量,需要将其转换为可读格式。这里有一个例子:
- name: Extract timestamp from output
set_fact:
timestamp: "{{ output.json | json_query(snap_timestamp) }}"
vars:
snap_timestamp: "[*].{Timestamp: timestamp}"
我得到的输出是:
{
"msg": "timestamp is [{'Timestamp': 1662628573}]"
}
然后我试着用这些过滤器转换它,但它不起作用
- name: Convert timestamp to a human readable format
set_fact:
snap_timestamp_converted: "{{ snap_timestamp[0] | to_json | '%Y-%m-%d %H:%M:%S' | strftime }}"
知道吗?
谢谢。
正确的语法如下。请参阅的处理日期和时间
snap_timestamp_converted: "{{ '%Y-%m-%d %H:%M:%S'|strftime(timestamp) }}"
例如,战术手册
- hosts: localhost
vars:
timestamp: 1662628573
snap_timestamp_converted: "{{ '%Y-%m-%d %H:%M:%S'|strftime(timestamp) }}"
tasks:
- debug:
var: snap_timestamp_converted
给出
snap_timestamp_converted: '2022-09-08 11:16:13'