Дата переформатирования из DD -MM -YYYY в YYYY -MM -DD в Ansible

Из документации последней версии можно заменить шаблон индекса следующими ключами конфигурации:

setup.template.overwrite: true
setup.template.enabled: true

0
01.07.2021, 12:35
1 ответ

В Ansible существует множество вариантов манипулирования строками, например.

    - set_fact:
        d2: "{{ _a.2 }}-{{ _a.1 }}-{{ _a.0 }}"
      vars:
        d1: 22-12-2021
        _a: "{{ d1.split('-') }}"

дает

  d2: '2021-12-22'

Это хороший вариант -вкладыш (кредит @Sijaan Hallak ), который дает тот же результат

    - set_fact:
        d2: "{{ d1.split('-')[::-1]|join('-') }}"
      vars:
        d1: 22-12-2021

Следующая опция — Обработка даты и времени Функции, например. создать объект даты

      set_fact:
        d2: "{{ d1|to_datetime('%d-%m-%Y') }}"
      vars:
        d1: 22-12-2021

дает

  d2: '2021-12-22 00:00:00'

и используйте фильтр strftime для форматирования строки, например.

      set_fact:
        d2: "{{ (d1|to_datetime('%d-%m-%Y')).strftime('%Y-%m-%d') }}"

дает

  d2: '2021-12-22'
3
28.07.2021, 11:21

Теги

Похожие вопросы