[编辑] 我正在编辑原始问题,以便更加清晰
我正在尝试构建一个 Ansible 脚本,用于删除超过 10 天的快照。community.vmware.vmware_guest_snapshot_info 返回的值的格式如下,'2022-09-10T15:29:06.888990+00:00'
我希望将其转换为仅这样2022-09-10
,然后就可以从生成的值中减去它,date: "{{ lookup('pipe', 'date +%Y%m%d) }}"
我曾尝试使用 to_datetime 将其转换为以下格式:
snap_info['guest_snapshots']['current_snapshot']['creation_time']|to_datetime("%Y-%m-%dT%H:%M.%S.%f%z")
但是我得到了一个错误ValueError: time data '2022-09-10T15:29:06.888990+00:00' does not match format '%Y-%m-%dT%H:%M.%S.%f%z'
我使用了错误的转换吗? to_datetime 是我想要的吗?
答案1
我搞明白了。我改成to_datetime("%Y-%m-%dT%H:%M.%S.%f%z")
了to_datetime("%Y-%m-%dT%H:%M:%S.%f+00:00")
。这花了一段时间,我想感谢@Ramhound指出格式中的月份数字与月份名称。