Сортировать json вывод в ansible или получить новейший файл - PullRequest
0 голосов
/ 06 февраля 2020

Я хочу получить самый новый файл из каталога, но проблема в том, что ответ не отсортирован, поэтому мой "самый новый" файл является старым из-за использования json_query.

В моем каталоге я имею пара файлов

test123.zip => created 01.01.2020
test1234.zip => created 07.01.2020
tested12345.zip => created 04.02.2020

Вывод ansible равен

test1234.zip
test12345.zip
test123.zip 

Таким образом, test123.zip является последним. Я не могу использовать указанное c имя, потому что имена разные. Мне нужно получить самый новый файл по дате.

В моей пьесе у меня есть:

tasks:
      - name: Find the newest zip file
        win_find:
          paths: \\localhost\zipfiles\
          get_checksum: no
        register: zipfile_the_newest
      - debug:
          msg: "{{ zipfile_the_newest | json_query('files[].filename') | last }}"

Вывод:

test123.zip

И мой вопрос, как получить самый новый файл по дате или как отсортировать вывод, что самый новый файл будет внизу.

1 Ответ

1 голос
/ 07 февраля 2020

Документация win_find: module гласит , что он возвращает creationtime в качестве атрибута каждого файла, поэтому вам нужно отсортировать по этому значению

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...